5

Я планирую получить новый процессор и смотрю на четырехъядерный процессор i5.

Причина четырехъядерности в том, что я, как правило, многозадачен, например, запускаю Visual Studio, Eclipse Aptana, Photoshop, Lightroom и множество браузеров Chrome одновременно.

  1. Мне интересно, возможно ли выделить определенные процессы, такие как Visual Studio, для постоянного использования определенного ядра, и есть ли инструмент, лучше, чем Windows Task Manager, для достижения этой цели?

  2. Это даст мне более быстрый многозадачный опыт, или я не буду замечать эффекты?

  3. Я также планирую перейти на 8 ГБ с 3 ГБ, так как после нескольких часов веб-разработки у меня возникли серьезные проблемы с несколькими открытыми средами разработки и использованием инструментов разработчика Chrome. Хватит ли дополнительной оперативной памяти или мне нужен более быстрый процессор? (в настоящее время работает Core 2 Duo E6750 @ 2,66 ГГц)

2 ответа2

3

Как правило, вы не заметите эффектов размещения отдельных процессов на определенных ядрах, поскольку Windows, как правило, довольно хорошо умеет планировать элементы между ядрами, особенно в Windows 7, которая была разработана с учетом этого.

Я обнаружил, что в общем случае занятая задача тратит большую часть (обычно> 60% для обычных приложений и> 95% для однопоточных игр) своего времени на одном ядре, а Windows будет планировать другие задачи на других ядрах, поскольку все становится более загруженным, поэтому не беспокоиться об этом. Кажется, я помню, что читал, что Windows 7 может сказать, какие ядра "предпочтительнее" в системе, поэтому в системе Intel, которая использует функцию Turbo Boost (которая использует активность на первом ядре, чтобы определить, нужно ли его повышать) и Hyperthreading, то Windows будет стремиться планировать однопоточные задачи на первом ядре, а затем многопоточные задачи будут преимущественно назначаться "реальным" ядрам, а не гиперпоточным "виртуальным" ядрам. Я видел, как это работает на моем i7 (четырехъядерном, 8-многопоточном ядре), и это работает довольно хорошо с играми, почти исключительно использующими первое ядро и затем умеренное использование на альтернативных "реальных" ядрах.

Единственное время, которое я нахожу полезным для определения сродства, - это просмотр видео с использованием определенных медиаплееров, которые являются мультипроцессорными, но, похоже, имеют проблемы с синхронизацией. Mediaplayer Classic Hometheater Edition, кажется, довольно сильно "подпрыгивает", когда вы начинаете переходить вперед в видео, предположительно потому, что он использует несколько потоков для декодирования, и они не очень хорошо синхронизированы между ядрами, и в этом случае он настроен на использование только одного процессора. останавливает прыжки

В случае, если вам нужно изменить привязку к процессору, есть пара инструментов:

Runfirst помогает исправить старые программы, убедившись, что они запускаются только на первом процессоре, доступном в системе.

В этом обзоре Toms Hardware есть инструмент, который автоматически переназначит вам сходство задач, но ссылка на них, похоже, не работает, и в наши дни ее найти немного сложно. Я думаю, что эта программа должна работать постоянно, когда вы хотите, чтобы она назначала сходства. Похоже, вы могли бы получить это здесь

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

Я бы искренне ожидал, что 8 ГБ оперативной памяти будет более чем достаточно для удовлетворения ваших потребностей, но я не имею реального опыта использования инструментов, которые вы используете. Я могу сказать, что в системе 6 Гбайт у меня никогда не было проблем с работой системы из-за перегрузки жесткого диска, когда я работал на нескольких виртуальных машинах и IDE (eclipse) ...

1

Назначение привязки ЦП к конкретным исполняемым файлам - плохая идея. Установка сходства для процесса не резервирует процессор для указанного вами процесса, блокируя все другие процессы от этого процессора. Это просто говорит о том, что этот процесс может использовать только назначенный процессор.

Это проблема, потому что процессору требуется гораздо больше времени, чем обычно. Если вы используете привязки, чтобы связать процесс, скажем, CPU 0, и что-то еще использует CPU 0, когда вашему процессу требуется CPU, ваш процесс вообще не может работать, пока что-то еще не будет сделано с CPU 0.

Гораздо лучше бегать куда-то, чем никуда, и бегать никуда не является распространенным результатом установки сходства.

Еще один ужасный результат установки привязки процесса к одному ЦП состоит в том, что вы ограничиваете все потоки этого процесса одним ЦП. Тем самым убивая любое преимущество в производительности, которое могло иметь многопоточность.

Короче говоря, просто позвольте планировщику Windows делать свое дело. Чем меньше вариантов вы предоставите, тем хуже будет работа.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .