Смотря что в цикле происходит. Если в цикле вы читаете 16 гб с диска - узким местом будет диск. Если очень много работы с памятью - память. 50000 в цикле - не проблема, 2^32 - тоже. Частота процессора может влиять, а может и нет. Многопоточность - вопрос сложный, но скорее всего программа сама не поймет что можно параллелить и не будет создавать новых потоков.