@Climate78

Что важно в процессоре больше для программирования, тактовая частота или количество ядер?

Какая из этих характеристик в большинстве случаев даст больше производительности процессора в программировании?

Не могу найти точный ответ на данный вопрос. Понимаю что скорее всего в разных сферах разработки будет доминировать та или иная характеристика. Если можно аргументированный ответ и примеры этих сфер
  • Вопрос задан
  • 2570 просмотров
Решения вопроса 2
  1. Практически на любом современном десктопном CPU достаточно ядер для тестирования и отладки разного рода параллельных алгоритмов. Поэтому предлагать взять "побольше" смысла не вижу. Меньше двух вы не найдёте, больше восьми не так уж и нужно.
  2. Тактовой частоты любого из современных CPU дороже 15 тыщ достаточно для комфортной разработки, если речь идёт об IDE, редакторе, отладке.
  3. Обе указанные характеристики в целом имеют очень небольшое значение. Архитектура, рыночный сегмент и поколение процессора (или проще - год выпуска) куда важнее, чем тактовая частота или количество ядер.
  4. Production-железо - совсем другое дело. Есть задачи которые плохо параллелятся, есть - которые хорошо. Сервера последние лет 10 идут на повышение количества ядер и повышение плотности. Но вам-то зачем об этом беспокоиться?
  5. Мне кажется, вы ещё не уверены, чем вообще будете заниматься, но железо хотите купить сейчас под какие-то непонятные "сферы разработки". Лучше купите чего-нибудь послабее - чтобы не забывать о производительности того, что вы пишете.

А вот оперативной памяти много не бывает, эт да. Пихайте сколько влезет. Диск тоже можно побыстрее - нередко у разработчика различные процессы (сборка, установка зависимостей и т.д.) именно в диск и упираются.
Ответ написан с предположением что речь идёт о персональной ЭВМ для разработчика.
Ответ написан
@rPman
Последние 10 -15лет частота не является определяющим параметром (ее потолок уже достигнут). Важными параметрами являются размер кеша процессора и количество ядер (последнее не сильно актуально для разработчика, за исключением c++ разработчиков, которым приходится пересобирать такие крупные проекты как например chromium). К сожалению, так как обычно кеши процессора делятся на ядра, чем больше этих ядер тем меньшее значение имеет очередное увеличение его размера. Так для современных процессоров кеш меньше 16мб..32мб - уже маленький.

Смотри на синтетические тесты 'single thread', именно этот параметр определяет фактическую скорость работы на рядовых задачах, а многопоточный тест покажет только возможности процессора для очень узкого списка задач, типа числодробилки.

Высокая частота определяет как быстро процессор будет работать в ускоренном режиме короткое время, т.е. отзывчивость, скорость реакции на действия пользователя (нажал кнопку - что то произошло), пока он еще не нагрелся, обычно это секунды, к сожалению мало синтетических тестов на этот параметр, обычно ограничиваются оценкой времени, после которого включается замедление.

p.s. почему видеокарты позволяют ускорить вычисления в сотню раз, потому что задачи, которые они решают хорошо ложатся на многопроцессорные системы, а сами они представляют из себя очень высокоэффекивную оперативную память с огромным (тысячи) количеством процессоров, с очень эффективным (с оговорками) доступом, к сожалению типовые задачи видеокарты будут выполнять очень не эффективно. Кстати разработчики пока еще для видеокарт пишут очень эффективный код, когда как для обычного процессора разработчики уже давно опустили руки и ничего не оптимизируют.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
@evgeniy_lm
При программировании 99,99999999999999% времени тратится на обдумывание алгоритма, написание кода и анализ ошибок. Все это от процессора ПК не зависит от слова "совсем". По этому совершенно не важно сколько ядер в вашем CPU и какая у них частота. Важно как быстро соображает программист, как хорошо он знает объект программирования.

Другое дело для чего предназначена разрабатываемая программа и какие ресурсы требуются для ее выполнения. Очевидно, что при недостатке ядер и частоты CPU не будет возможности проверки и отладки программы. Но это уже совсем другая история
Ответ написан
Комментировать
mayton2019
@mayton2019
Bigdata Engineer
С 2005 года достигнут инженерный предел наращивания тактовой частоты. Грубо говоря, современные инфосистемы отказались от движения в ту сторону. Поэтому вопрос поставлен некорректно.

Не что важно. А что мы вообще можем сделать в этой ситуации.
Ответ написан
Комментировать
firedragon
@firedragon
Не джун-мидл-сеньор, а трус-балбес-бывалый.
Напишу неочевидные вещи для некоторых типов проектов. Это Xamarin, Java, C, nodejs,

Для них выгодней разместить папку проекта и самое главное папку темп на ram drive. Тоже самое и с базами данных. Причём фс брать фат.
В случае xamarin и node js скорость сборки возрастает раз в 8-10
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы