Какой процессор лучше для excel
Добрый день!
Каждый день делаю огромные выгрузки данных более 300 000 строк и при запуске любой формулы, комп зависает надолго, один такой файл я обрабатывала формулами 2,5 дня только потому, что комп виснет, каждый раз после протяжки формулы все сохраняла как значение. ИТ говорят пишите заявку на новый комп, в заявке нужно указать какие параметры должны быть у компа для обработки больших данных excel, а я незнаю. Может кто нибудь знает, помогите, очень надо.
Добрый день!
Каждый день делаю огромные выгрузки данных более 300 000 строк и при запуске любой формулы, комп зависает надолго, один такой файл я обрабатывала формулами 2,5 дня только потому, что комп виснет, каждый раз после протяжки формулы все сохраняла как значение. ИТ говорят пишите заявку на новый комп, в заявке нужно указать какие параметры должны быть у компа для обработки больших данных excel, а я незнаю. Может кто нибудь знает, помогите, очень надо. Elvira66
Пишите лучше заявку на новых IT-шников
Никакой компьютер файл на 300000 записей с формулами (у Вас там ВПР небось, да?) не потянет.
Нужно оптимизировать работу с файлом.
Например, переводить все в Акс, или использовать сводные таблицы, макросы, .
В качестве прикола -
у меня так исторически сложилось, что еще до моего прихода на одну работу там были файлы по 700-800 тысяч записей. Вес 400-500 МЕГОВ. В EXCEL. Базы они вели так, блин!
А переделывать все это у меня ни времени, ни желания нет - у меня своей работы выше крыши. Только облегчил там им все и ничего, работают. Даже фильтрами пользоваться можно теперь.
Пишите лучше заявку на новых IT-шников
Никакой компьютер файл на 300000 записей с формулами (у Вас там ВПР небось, да?) не потянет.
Нужно оптимизировать работу с файлом.
Например, переводить все в Акс, или использовать сводные таблицы, макросы, .
В качестве прикола -
у меня так исторически сложилось, что еще до моего прихода на одну работу там были файлы по 700-800 тысяч записей. Вес 400-500 МЕГОВ. В EXCEL. Базы они вели так, блин!
А переделывать все это у меня ни времени, ни желания нет - у меня своей работы выше крыши. Только облегчил там им все и ничего, работают. Даже фильтрами пользоваться можно теперь. _Boroda_
Никакой компьютер файл на 300000 записей с формулами (у Вас там ВПР небось, да?) не потянет.
Нужно оптимизировать работу с файлом.
Например, переводить все в Акс, или использовать сводные таблицы, макросы, .
В качестве прикола -
у меня так исторически сложилось, что еще до моего прихода на одну работу там были файлы по 700-800 тысяч записей. Вес 400-500 МЕГОВ. В EXCEL. Базы они вели так, блин!
А переделывать все это у меня ни времени, ни желания нет - у меня своей работы выше крыши. Только облегчил там им все и ничего, работают. Даже фильтрами пользоваться можно теперь. Автор - _Boroda_
Дата добавления - 21.03.2017 в 17:49
Александр, ну так уж админов сразу менять наверно не стоит, у нас тут в ходу девятилетние десктопы и чуть новее неттопы на АРМ, которые по 30 мин винду грузят, я не шучу.
Elvira66,
Но убедится и провериь что лучше не станет работать на другом, более производительном ПК , нужно. ТОПОВЫЙ I7 да разогнать, да память добавить, да . 200к рублей и будет считать быстрее.
Александр, ну так уж админов сразу менять наверно не стоит, у нас тут в ходу девятилетние десктопы и чуть новее неттопы на АРМ, которые по 30 мин винду грузят, я не шучу.
Elvira66,
Но убедится и провериь что лучше не станет работать на другом, более производительном ПК , нужно. ТОПОВЫЙ I7 да разогнать, да память добавить, да . 200к рублей и будет считать быстрее. bmv98rus
Elvira66,
Но убедится и провериь что лучше не станет работать на другом, более производительном ПК , нужно. ТОПОВЫЙ I7 да разогнать, да память добавить, да . 200к рублей и будет считать быстрее. Автор - bmv98rus
Дата добавления - 21.03.2017 в 17:58
Бытует мнение, что для офисного ПК, на котором преимущественно используют приложения из одноименного пакета от Microsoft, не важно: какой процессор, сколько памяти и какие прочие компоненты будут установлены. В действительности, это, конечно, не так. Пренебрегать производительностью, даже для компьютера, на котором действительно ничего, кроме Word и почтового клиента, не используется, можно лишь до определенной степени. Иначе простая вроде бы операция проверки орфографии «неожиданно» окажется весьма ощутимо тормозящей, а на время сжатия почтовой базы придется устраивать перекур. И это, между прочим, характерно отнюдь не только для так называемых «неттопов» (компьютеров, в которые в виду какого-то недоразумения, а точнее возникшей на какой-то момент моды, установили процессор, слабо пригодный даже для ноутбуков, не говоря уж о настольных компьютерах). Но и для полноразмерных ПК на одноядерных процессорах 4-5-летней давности. Разумеется, можно приноровиться и все это (вплоть до неттопов на процессорах Atom) как-то использовать в работе. Но если речь идет о новом компьютере, то, конечно, стоит обратить внимание хотя бы на младших представителей современных процессоров для настольных ПК, которые сейчас очень недороги. А если в число регулярно используемого ПО входят графические, мультимедийные и иные приложения, то, вероятно, имеет смысл поднять планку производительности несколько выше.
Ведь даже в не самых развитых странах рабочее время сотрудников (во всяком случае, тех, что должны пользоваться компьютерами) оплачивается явно выше, нежели можно выручить на виртуально сэкономленном электричестве. В реальности, разницы может не оказаться: современные настольные компьютеры в офисной конфигурации при работе в текстовом редакторе или иной подобной нагрузке потребляют несколько десятков ватт, без учета потребления монитора.
Однако спецификой выбора офисной конфигурации, в отличие, например, от игрового ПК, собираемого самостоятельно для себя энтузиастом, является необходимость ориентироваться на универсальные и, как правило, готовые бенчмарки. Создавать специальный набор тестов, где будет точно имитироваться рабочая среда для каждого пользователя, слишком трудоемко, а решение о выборе обычно требуется принять быстро. Как показывает практика, наиболее адекватными из распространенных на сегодня офисно-ориентированных тестов, являются SYSMark 2007 и PCMark Vantage. Мы решили собрать результаты в этих тестах, демонстрируемые конфигурациями с разными процессорами, видеокартами и объемом памяти. И по традиции, мы снабдили статью интерактивным «калькулятором».
Конфигурация и ПО
- AMD Sempron LE-1300 (1 ядро, 2,3 ГГц, 512 KB L2-кэш, HT1600, Н/Д(1));
- AMD Sempron X2 2100 (2 ядра, 1,8 ГГц, 2 х 256 KB L2-кэш, HT1600, Н/Д(0));
- AMD Athlon X2 4850e (2 ядра, 2,5 ГГц, 2 х 512 KB L2-кэш, HT2000, Н/Д(0));
- AMD Athlon X2 5200B (2 ядра, 2,7 ГГц, 2 х 512 KB L2-кэш, HT2000, Н/Д(1));
- AMD Athlon X2 7750 (2 ядра, 2,7 ГГц, 2 х 512 KB L2-кэш, 2 MB L3-кэш, HT3600, Н/Д(0));
- AMD Athlon X2 7850 (2 ядра, 2,8 ГГц, 2 х 512 KB L2-кэш, 2 MB L3-кэш, HT3600, Н/Д(0));
- AMD Athlon II X2 250 (2 ядра, 3,0 ГГц, 2 х 512 KB L2-кэш, HT4000, Н/Д(0));
- AMD Phenom II X2 550 (2 ядра, 3,1 ГГц, 2 х 512 KB L2-кэш, 6 MB L3-кэш, HT4000, Н/Д(0));
- AMD Phenom II X3 710 (3 ядра, 2,6 ГГц, 3 х 512 KB L2-кэш, 6 MB L3-кэш, HT4000, Н/Д(0));
- AMD Phenom II X4 805 (4 ядра, 2,5 ГГц, 4 х 512 KB L2-кэш, 4 MB L3-кэш, HT4000, Н/Д(0));
- AMD Phenom II X4 810 (4 ядра, 2,6 ГГц, 4 х 512 KB L2-кэш, 4 MB L3-кэш, HT4000, Н/Д(0));
- Intel Celeron E1400 (2 ядра, 2,0 ГГц, 512 KB L2-кэш, FSB800, Н/Д(2));
- Intel Pentium E5300 (2 ядра, 2,6 ГГц, 2 MB L2-кэш, FSB800, Н/Д(4));
- Intel Pentium E6300 (2 ядра, 2,8 ГГц, 2 MB L2-кэш, FSB800, $11(6));
- Intel Core 2 Duo E7400 (2 ядра, 2,8 ГГц, 3 MB L2-кэш, FSB1066, $110(8));
- Intel Core 2 Duo E7600 (2 ядра, 3,06 ГГц, 3 MB L2-кэш, FSB1066, Н/Д(0));
- Intel Core 2 Quad Q8400 (4 ядра, 2,66 ГГц, 2 х 2 MB L2-кэш, FSB1066, Н/Д(2)).
- ASRock A780LM (AMD 760G);
- FOXCONN A7VA rev 1.0 (AMD 780V);
- Gigabyte MA770-UD3 (AMD 770);
- Gigabyte GA-MA790X-DS4 (AMD 790X);
- Intel DG43NB (Intel G43);
- ASUS P5Q-VM (Intel G45);
- MSI P45 NEO1 (Intel P45).
- ATI Radeon HD3450;
- ATI Radeon HD4350;
- ATI Radeon HD4650.
- оперативная память: 2 x 1 GB DDR2-1066 AENEON, 2 x 512 MB DDR2-800 Kingston;
- жесткий диск: 250 ГБ Seagate Barracuda 7200.11 SATA, 7200 об/мин.
- ОС Windows Vista Ultimate (32 bit), драйверы ATI Catalyst 9.5;
- PCMark Vantage (стандартный тест с 3 повторениями);
- SYSMark 2007 Preview (3 прогона с калибровочным запуском, результат которого не учитывается).
Разрешение экрана: 1280х1024, 32 бит, 60 Гц.
Тестирование
SYSMark 2007
- Adobe After Effects 7
- Adobe Illustrator CS2
- Adobe Photoshop CS2
- AutoDesk 3ds Max 8
- Macromedia Flash 8
- Microsoft Excel 2003
- Microsoft Outlook 2003
- Microsoft PowerPoint 2003
- Microsoft Word 2003
- Microsoft Project 2003
- Microsoft Windows Media Encoder 9
- Sony Vegas 7
- SketchUp 5
- WinZip® 10.0
Глядя на этот список, можно предположить минимальную зависимость от установленной видеокарты, важна будет, в первую очередь, собственная производительность процессора. Также на результат повлияет объем и производительность памяти (в наших тестах мы использовали 2 x 1 GB DDR2-1066 AENEON для всех процессоров, за исключением Sempron и Celeron, которым для большего соответствия особо бюджетному сегменту был предоставлен комплект 2 x 512 MB DDR2-800 Kingston). Наконец, еще один компонент, на который следует обратить внимание, - жесткий диск, производительность которого также вносит свой вклад в итоговый балл (и, соответственно, для корректного сравнения разных конфигураций необходимо использовать одинаковые диски).
Обращает на себя внимание и тот факт, что в тестовом пакете собраны не самые новые на сегодняшний день версии ПО, поэтому вероятен определенный консерватизм в отношении многоядерных процессоров. Скорее всего, наличие дополнительных ядер будет незначительно поднимать итоговый балл, при этом процессор с меньшим числом ядер, работающий на более высокой частоте, может оказаться в выигрышной ситуации.
Данная таблица наглядно демонстрирует отсутствие какого-либо влияния установленной видеокарты на результаты теста. И итоговый балл, и результаты в отдельных подтестах, практически не отличаются при использовании как интегрированного в чипсет AMD 780V ядра, так и двух видеокарт на графических процессорах Radeon HD3450 и HD4350.
Расстановка сил в ряду процессоров хорошо иллюстрирует теорию: действительно, если единственный одноядерный процессор (Sempron LE-1300) в этой подборке явно отстает, то многочисленные двухъядерники уступают процессорам с большим количеством ядер лишь в тестах, связанных с обработкой видео. Тем не менее, если учесть, что более новые версии приложений активнее задействуют дополнительные ядра, интересным вариантом представляется трехъядерный Phenom II X3 710, который относительно недорог и имеет сбалансированный результат, в среднем, по подтестам, а также запас на перспективу.
Наибольшая конкуренция наблюдается в диапазоне 135-145 баллов - именно такой уровень производительности имеют двухъядерные Athlon X2 7000-серии и Pentium E. Уверенно смотрится в этом классе и новинка: Athlon II X2 250. Судя по всему, именно на этот сегмент приходится максимум производительности в офисном ПО за свои деньги.
Наконец, мощные двухъядерники (Phenom II X2 550 и Core 2 Duo E7600) набирают максимальные баллы, выступая на равных и даже превосходя в ряде подтестов результаты четырехъядерников из семейства Phenom II X4 800-серии и Core 2 Quad Q8400. Впрочем, если X4 810 уступил E7600 не так сильно, то результат Q8400 выглядит провальным. Ведь этот процессор по позиционированию и цене находится в более высокой категории (в частности, из семейства, Phenom II ему, скорее, соответствуют модели 920/940). Но сложно сказать, насколько адекватно можно оценивать производительность процессоров такого уровня с помощью набора приложений из SYSMark 2007. Скорее, следует признать, что четырехъядерники не являются оправданным выбором для среднего офисного ПК, в котором (как и в пакете SYSMark 2007) обычно используются не самые новые версии приложений.
PCMark Vantage
В отличие от предыдущего теста, PCMark является собственной разработкой компании Futuremark, и хотя заявлено, что в основе тестов используются типичные для реальных приложений фрагменты программного кода, этот тест все же не претендует на прозрачность итоговой оценки. Тем не менее, он тоже весьма популярен и может быть неплохим подспорьем при сравнении разных конфигураций в условиях дефицита времени. К тому же тест полностью ориентирован на Windows Vista, гораздо более активно задействует многопоточность, вследствие чего получает преимущество от дополнительных ядер многоядерных процессоров. Также тест сильнее нагружает графическую подсистему, поэтому весьма показательно сравнить результаты конфигураций с различными видеокартами. В составе теста есть и неплохие средства для сравнения производительности жестких дисков.
Линейной зависимости итогового балла от количества ядер в процессорах, конечно, не наблюдается, потому что на результат влияют и другие факторы, да и не все тесты являются многопоточными. Но впереди, действительно, четырехъядерные процессоры, следом идет единственный в нашем тестировании трехъядерник, который, впрочем, лишь немного обогнал безоговорочного лидера в ряду двухъядерников: Phenom II X2 550. В свою очередь, результат Core 2 Duo E7600, который мог бы если и не догнать конкурента, то хотя бы заполнить пробел, в этом тесте стабильно оказывался ниже, чем у E7400. Это, конечно, сложно обосновать какими-то рациональными доводами, ведь, по формальным признакам, этот процессор мощнее. Но поскольку он выпущен совсем недавно, скорее всего, проблема в BIOS (но проблема достаточно глобальная - мы перепробовали несколько плат).
Зависимость от видеокарты в этом тесте наблюдается, ведь в его составе есть даже фрагменты теста из 3DMark — известного пакета для тестирования на основе игровой 3D-графики, однако, в целом, тест больше ориентирован на оценку производительности процессора, памяти и жесткого диска. В результате, конфигурация с более мощным процессором почти всегда набирала более высокий балл, даже при использовании видеокарты классом ниже.
Для удобства сравнения конфигураций, предлагаем воспользоваться нашим интерактивным «калькулятором»:
Выводы
Общие рекомендации по выбору конфигурации для офисного ПК можно давать лишь с оговорками на конкретные обстоятельства: где-то приходится исходить из бюджета и необходимого количества рабочих мест, а где-то важен базовый уровень производительности. Если исходить из минимальных требований достаточной скорости реакции операционной системы и минимального набора офисного ПО (текстовый редактор с проверкой правописания, почтовая программа, интернет-браузер и необходимые средства для обеспечения безопасности (антивирус/антишпион, сетевой экран), то в качестве процессора с задачей вполне справятся даже представители начала списка: двухъядерные Sempron и Celeron. А процессоры, набирающие более 100 очков в SYSMark, будут субъективно восприниматься, как быстрые. Фактически дальнейшее увеличение скорости отклика системы, если пользователь понимает под этим время загрузки программ, перемещения по папкам с файлами и поиск на диске, в большей степени связано с производительностью жесткого диска, нежели процессора. Если пользователь работает с графическими данными, документами порядка нескольких десятков страниц Word, архивированными данными, оптимальным выглядят конфигурации, набирающие 135-145 баллов. Наконец, для тех, кто имеет дело с трехмерным моделированием (даже несложным, как, например, менеджер мебельного салона) или видеоредактированием, необходимо позаботиться о процессоре, получившем от 145 баллов, причем более адекватным выбором будет 3-4 ядерная модель.
Что касается остальных компонентов, то даже для компьютера начального уровня необходим 1 ГБ оперативной памяти. Но при работе под Windows Vista за минимум следует принять 2 ГБ, который одновременно является и «оптимумом» для практически любых офисных ПК. За исключением рабочих станций, занятых профессиональным 3D-рендерингом или CAD-моделированием (которые не принято включать в эту категорию, хотя, в общем-то, они также по своему местоположению относятся к «офисным»). Очевидным предметом экономии можно назвать видеокарту, которую просто нет особой необходимости ставить, достаточно выбрать системную плату с интегрированным видео. Причем в случае с такими чипсетами, как AMD 780V/780G пользователь получает и неплохую базовую функциональность в задачах, требующих аппаратного обсчета 3D-графики.
Наконец, если все же приобретается дискретная видеокарта, а плата, соответственно, выбирается без собственного видео, то нет никакого резона выбирать плату на дорогом чипсете с несколькими графическими портами, как, например, платы на AMD 790FX. Старшим чипсетом, платы на котором имеет смысл рассматривать при комплектации любого офисного компьютера, даже если в качестве процессора устанавливается мощная трех или четырехъядерная модель, для AMD-платформы является AMD 770, а для Intel - P45. Это может показаться очевидным, но почему-то нередко можно встретить конфигурации, которые планируется тестировать в SYSMark/PCMark и ориентировать на офисное применение, но в которых использованы платы на старших чипсетах. Ясно, что при фиксированном бюджете на компьютер, на процессор в таком случае останется меньше средств, и такой компьютер покажет низкий результат в тестах и действительно окажется слабее и уступит компьютеру, в котором акцент сделан на максимально мощный процессор, а плата взята недорогая. Действительная сфера применения таких чипсетов, как 790FX или Intel X48 ограничивается игровыми компьютерами и специфическими профессиональными приложениями, где может использоваться несколько видеокарт или другая высокоскоростная периферия, устанавливаемая в слоты PCI Express x16.
Предлагаем вашему вниманию вторую часть исследования на тему «Конфигурация офисного ПК».
Всем здравствуйте. Производим расчеты в Microsoft Excel 2010 (не обсуждаем почему, так удобней). Поиск решения занимает значительное время (более часа). Встал вопрос как ускорить этот процесс. Первоначально задача выполнялась на машине послабее (core i5-4690, DDR3 8Гб, система и офис установлены на SSD. Windows 10 x64, Office 2010). Попробовали на машине посильней (core i7-7700, DDR4 16Гб, система и офис на SSD. Windows 10 x64, Office 2016). К удивлению, прироста производительности при решении практически не оказалось (даже показалось что на более слабой машине быстрее работает). Отсюда вопрос: Какие ресурсы важны для Excel? На какой машине он будет работать быстрее? Желательно не предлагать переход на Linux и использование Matlab и т.п.
Все ответы
Подозреваю ваш вопрос из серии "Как эффективно стрелять из молотка, другие варианты по типу рогатки не предлагать"
Учитывая что вы добавляете производительность вы наверное из чего то выходите, например из монитора ресурсов, который вам показывает нехватку ресурсов.
Каких ресурсов под ваши задачи вам не хватает исходя из ПО предназначенного для определения таких величин?
Если ваши расчеты проводятся не эффективно либо ваше решение не предназначено для этих расчетов, либо вы неправильно считаете
The opinion expressed by me is not an official position of Microsoft
Если ваш макрос или скрипт постоянно обращается к ячейкам, то это происходит через объектную модель, а значит, по определению, медленно. Использование более производительного процессора здесь не сильно поможет. Если есть возможность оптимизировать ваш макрос или скрипт, например, считать значения ячеек в переменные и массивы и уже с ними выполнять дальнейшую работу, то следует этим воспользоваться. Даже отключение автообновления экрана на время вычислений
приводит к заметному повышению производительности. Мне удавалось повысить производительность сценария, работающего с таблицей Excel, примерно в 50 раз просто заменив прямую запись ячеек на заполнение через буфер обмена.
- Изменено osr_ MVP, Moderator 10 марта 2017 г. 22:46
- Предложено в качестве ответа Alexander Rusinov Moderator 13 марта 2017 г. 12:46
При чем тут молоток? Excel сделан для того, чтобы производить несложные расчеты или когда условия задачи все время меняются. Пока нет четкого алгоритма, рассчитывать в Excel удобней. После того, как процесс будет отлажен, будет написана программа соответствующая, которая понятно будет значительно быстрее работать.
Я запускаю одну и ту же задачу с одинаковыми условиями на двух компьютерах. Для меня показателем производительности является счетчик выполнения операций самого excel и время, затраченное на выполнение задачи целиком.
При чем тут молоток? Excel сделан для того, чтобы производить несложные расчеты или когда условия задачи все время меняются. Пока нет четкого алгоритма, рассчитывать в Excel удобней. После того, как процесс будет отлажен, будет написана программа соответствующая, которая понятно будет значительно быстрее работать.
Я запускаю одну и ту же задачу с одинаковыми условиями на двух компьютерах. Для меня показателем производительности является счетчик выполнения операций самого excel и время, затраченное на выполнение задачи целиком.
Прочтите ответ еще раз, и ответьте на заданные вопросы
С несложными расчетами ексель вполне сносно справляется например работа с таблицами (2-5 шт) по 200 - 300 строк по 10 - 20 значений в каждой проходит в секунды, по всей видимости ваши задачи выходят за рамки несложных расчетов.
Примеры оптимизации вам предложил osr_
The opinion expressed by me is not an official position of Microsoft
Послушайте, я был уверен что более производительный процессор выполняет одну и ту же задачу быстрее нежели более медленный. Это касается всех операций. В том числе и скриптов. По крайней мере, я был в этом уверен. Я прекрасно понимаю, что такое оптимизация кода.
Вы отвечаете мне на вопрос - как ускорить выполнение задачи путем оптимизации кода.
А я задавал вопрос: "Какие аппаратные ресурсы важны для скорости работы excel?" Может я как-то неправильно формулирую свой вопрос. Попробую по другому. Какие комплектующие компьютера влияют на скорость выполнения операций в excel? Т.е. что я могу модернизировать в компьютере, чтобы моя задача (именно в таком же виде) выполнялась быстрей?
Послушайте, я был уверен что более производительный процессор выполняет одну и ту же задачу быстрее нежели более медленный. Это касается всех операций. В том числе и скриптов. По крайней мере, я был в этом уверен. Я прекрасно понимаю, что такое оптимизация кода.
Вы отвечаете мне на вопрос - как ускорить выполнение задачи путем оптимизации кода.
А я задавал вопрос: "Какие аппаратные ресурсы важны для скорости работы excel?" Может я как-то неправильно формулирую свой вопрос. Попробую по другому. Какие комплектующие компьютера влияют на скорость выполнения операций в excel? Т.е. что я могу модернизировать в компьютере, чтобы моя задача (именно в таком же виде) выполнялась быстрей?
Вы можете строить миллионы догадок, а можете ответить на мой первый пост и получить тем самым ответ на свой вопрос
The opinion expressed by me is not an official position of Microsoft
Я ответил уже osr_ по предложению оптимизации кода. Мы разговариваем, как слепой с глухим.
При выполнении задачи диспетчер показывает загрузку одного ядра примерно на 100%, остальные приблизительно на 50% (т.е. для core i5 это 4 ядра, для core i7 это 8. понимаю, что i7 это не физические 8 ядер).
Показателем для меня, повторюсь, является счетчик выполнения операций самого excel и время выполнения задачи целиком. В том то и дело, что время выполнения задачи целиком практически не отличается. Счетчик выполненных итераций идет "нога в ногу" на 2х компьютерах.
По поводу производительности EXCEL есть статья:
Процессор работает с памятью и дисковой системой, естественно, более быстрая память и дисковая подсистема может влиять на производительность. Процессоры оба четырёхядерные, разницы почти не будет, влияние может оказывать частота процессора и скорость чтения-записи ОЗУ и CCD небольших блоков данных.
Я ответил уже osr_ по предложению оптимизации кода. Мы разговариваем, как слепой с глухим.
При выполнении задачи диспетчер показывает загрузку одного ядра примерно на 100%, остальные приблизительно на 50% (т.е. для core i5 это 4 ядра, для core i7 это 8. понимаю, что i7 это не физические 8 ядер).
Показателем для меня, повторюсь, является счетчик выполнения операций самого excel и время выполнения задачи целиком. В том то и дело, что время выполнения задачи целиком практически не отличается. Счетчик выполненных итераций идет "нога в ногу" на 2х компьютерах.
Коли что я не osr_, вы в этот раз осилили половину моего ответа (он написан сразу под вашим вопросом)
Ексель по природе своей скорее всего не может отслеживать окружение в котором он выполняется, за распределение ресурсов отвечает не ексель а система, и у системы нужно спрашивать чего вам не хватает для хорошей жизни.
У системы есть различные системы мониторинга своего состояния, task manager - один из них, но он не единственный и в нем не одна закладка
Если вы видите что вы упираетесь в одно ядро - а все остальные используются на половину - Вам нужно ОДНО производительно ядро, если вы поставите проц с 20 ядрами вы все равно будете упираться в ОДНО ядро, а избежать этого можно оптимизацией кода, про которую вы и так все знаете и про которую Вам не нужно говорить (если что я и не говорю). Проц это только один из компонентов в которых Вы открыв одну из оснасток нашли bottleneck, но он может быть не единственным, для этого нужно открыть другие оснастки и посмотреть. Я сидя по другую сторону от Вашего монитора не могу догадаться про особенность Вашего солюшена, и Ваши оснастки я тоже не могу посмотреть.
Я выбираю компьютер для сложных расчетов в программе Excel (Windows 10, Office 2019): макрос за один раз обрабатывает 80 файлов, в каждом файле 25000 строк, 20 столбцов, всего 500000 ячеек, 400000 (четыреста тысяч) формул, включая формулы массива в одном столбце.
В настоящее время у меня ноутбук с процессором i5-8265U, 4 ядра, 8 потоков. На этом компьютере во время обработки макросом 80-ти файлов Excel загружает CPU всего лишь на 25-30 % согласно диспетчеру задач и вычисление занимает 4 часа.
Я хотел бы ускорить процесс вычислений и приобрести более производительный компьютер для этих целей.
Что самое важное в компьютере, а на что меньше обращать внимание, если компьютер будет использоваться только для работы Excel:
- Нужна ли многоядерность процессора для работы в Excel?
Может, вы посоветуете конкретный процессор для описанной задачи.
Благодарю за ответы.
Ответы
Я выбираю компьютер для сложных расчетов в программе Excel (Windows 10, Office 2019): макрос за один раз обрабатывает 80 файлов, в каждом файле 25000 строк, 20 столбцов, всего 500000 ячеек, 400000 (четыреста тысяч) формул, включая формулы массива в одном столбце.
В настоящее время у меня ноутбук с процессором i5-8265U, 4 ядра, 8 потоков. На этом компьютере во время обработки макросом 80-ти файлов Excel загружает CPU всего лишь на 25-30 % согласно диспетчеру задач и вычисление занимает 4 часа.
Я хотел бы ускорить процесс вычислений и приобрести более производительный компьютер для этих целей.
Что самое важное в компьютере, а на что меньше обращать внимание, если компьютер будет использоваться только для работы Excel:
- Нужна ли многоядерность процессора для работы в Excel?
Может, вы посоветуете конкретный процессор для описанной задачи.
Благодарю за ответы.
Многопоточность поддерживается при вычислениях самих таблиц. Проверьте включена ли она как показано на картинке ниже.
Однако скрипт является однопоточным. Если у вас все делает скрипт, то количество ядер особого значения не имеет - что у вас и наблюдается. У вас две решения этой проблемы:
- Переделать скрипт чтоб он использовал многопоточность. Поиск "vba excel multithreading" поможет найти варианты.
- Использовать процессор с максимальной однопоточной производительностью. На сегодня это i9-10900k. Но он быстрее вашего текущего процессора всего в полтора раза на одном потоке.
В общем, замена процессора без изменения скрипта скорее всего тупик. Если же вы сделайте свой скрипт многопоточным, то можно будет получить 10х "прибавки" на процессоре с большим числом ядер или в облаке.
Может быть, вы знаете определенный ресурс, который может помочь настроить VBA на многопоточность?
Нет, не знаю. Но по указанному мной запросу поисковики выводят судя по всему полезную информацию. Первая же ссылка на stack overflow выглядит многообещающей.
Скрипт потребуется по факту переписать, а не "настроить". Как именно - зависит от того что вы делайте в этом скрипте. Например, можно обрабатывать отдельные файлы параллельно если то что вы делайте это допускает.
_Самый быстрый_ процессор всего на 50% быстрее вашего. Как вы думайте какой эффект будет от процессора за $100? Помните что ваш текущий процессор имеет турбо буст на 3.9 GHz на которой он и будет работать в однопоточном режиме. Разница с указанными вами процессорами будет в пределах 5-10% - если вообще будет.
Если скрипт будет переписан, то надо брать процессор с большим числом ядер. Если бюджет ограничен, то наверное стоит смотреть в сторону AMD. Например AMD Ryzen 5 3600 обеспечивает самую высокую многпоточную производительность в растете на доллар цены.
This posting is provided "AS IS" with no warranties, and confers no rights.
Свой собственный сервер для обучения — как машина в 20 веке: если вы всерьез занимаетесь Data Science, рано или поздно вы придете к тому, что нужна единая настроенная среда, уверенность в ресурсах, независимых от правил работодателя и админов. Кто-то скажет, что всё можно делать в облаках, однако постоянный доступ, долгие эксперименты 24/7, да еще и с хранением данных выйдут в копеечку.
Итак, если вы решились — нужно строить свой город-сад.
Давайте посмотрим, что нам нужно:
- Датасеты где-то должны лежать. Нужна возможность хранить и иметь быстрый доступ к большим объемам данных.
- Видеокарта. Resnet-ы и Unet-ы ждут.
- Многоядерный процессор. Многие забывают, но многие операции в numpy, pandas, да и алгоритмы градиентного бустинга отлично распараллелены для multithreading, но все еще не работают на видеокартах.
- Оперативная память. Должна вмещать все.
- И остальное, что должно обслуживать параметры: достаточный источник питания, корпус и материнская плата, где все это счастье поместится, операционная система.
Итак, первое и самое дорогое — это видеокарта. Давайте признаем очевидное: Nvidia является сейчас абсолютным лидером по производительности и совместимости фреймворков, и если вы пишете нейросети, то вам нужно cudnn и cuda. Но хорошие видеокарты стоят круглые суммы: если мы хотим хотя бы 11 Gb памяти и соответствующую производительность, надо выложить 1000 $+ за топовую модель. Видеокарты разлетаются, а цены растут. Как быть? Надо вспомнить, что прямо сейчас мы живем в уникальное время: пузырь криптовалют лопается по швам, и на рынок выходит большое количество видеокарт от майнеров. Я являюсь счастливым обладателем подержанной 1080 Ti за 30 тыс. рублей, и почти за год она ни разу меня не подвела, работая 24/7. Возьмите компьютер с Windows (почему-то большинство программ тестирования видеокарт именно под эту систему), запаситесь программами, проверьте вашу рабочую лошадку вдоль и поперек и смело берите графический ускоритель в 1.5-2 раза дешевле.
Продолжая идею вычислителей, перейдем к процессору. Тут хотелось бы сказать, по аналогии с предыдущим, что абсолютный лидер — Intel (тем более, я там когда-то работал). Это верно… только если мы говорим про однопоточные приложения или неограниченный бюджет. Однако, у нас ни тот, ни другой случай, а хочется параллелить и денежку оставить, тут к нам приходит AMD Ryzen в целом и их линейка Threadripper в частности. За 700-1000$ можно купить 24-32 ядерный кристалл, на котором Catboost будет летать, аналогичные параметры Intel стоят в два раза дороже. Конечно, есть большое “НО”: своей производительности Threadripper обязан специфической конструкции, и с этим придется считаться (об этом ниже)…
Немного лирики от сборщика: «Думаю, после недавнего фиаско Intel с 10980XE вопрос о том, какой процессор выбрать для многопоточных вычислений, имеет довольно понятный ответ. Но… всё может поменяться».
И тут мы переходим к памяти. Делать сервер меньше чем с 32 гигабайтами оперативной памяти странно (тогда уже проще считать на фитнес-браслетах) и лучше брать память с высокой частотой (3200+, процессоры архитектур ZEN и ZEN 2 ее любят). Конечно, оперативная память — не самый сложный компонент схемы, а значит и производителей много, но лучше брать проверенных (я взял Corsair). Тут надо определиться с тем, сколько брать, и с количеством каналов. Самый простой ответ: побольше, чтобы на каждой плашке да по 16 гигабайт сидело. Кажется, что можно и 256 гигов оперативы заполучить в свой ПК. Но не всё так просто. Если вы берете двухканальную память, то к одному объему информации в памяти будет лезть вдвое больше активных ядер, а это значит, что снижается скорость доступа – тут надо вспомнить про необходимость быстрого доступа к памяти, как критичное требование. Значит берем четырехканальную. На каждой плашке у нас будет по 8 гигов памяти.
Еще один инсайт от сборщика, а точнее, обещанные подробности о Threadripper: «В целом, если в вас сидит мантра «все каналы памяти должны быть заполнены» (а у Threadripper их 4) можете скроллить вниз. Остальным напоминаю, что у этого процессора старой архитектуры интересная структура из 4 NUMA nodes, узлов с неоднородным доступом к памяти. Работать они могут и с одним каналом, но тогда у вас будут копиться задержки, вызванные этой архитектурой. В более новых Threadripper, построенных уже на ZEN 2, эта особенность ликвидирована, но пожелание компьютеру многих каналов памяти остается».
Итак, мы вывели ограничение материнской платы на количество слотов под память, хотя бы 4 (чтобы получить 32 гигабайта), а желательно — 8. Еще стоит сразу подумать, собираетесь ли вы брать вторую видеокарту, и, конечно, посмотреть на производителя. Тут мы выясняем, что предложений на рынке для PC (не серверных), подходящих под наши ограничения, не так много (по крайней мере, было немного, когда эта машина собиралась). Конечно, на ум приходит ASUS, и при неограниченном бюджете взял бы его, но пытаясь влезть в рамки, берем ASRock, младшего брата большой компании, доступного даже после падения рубля.
Конечно, имея такой быстрый вычислитель, странно упираться в скорость жесткого диска, значит нам нужен SSD. Они, конечно, дороже, однако выясняется, что мало какие задачи требуют терабайтов данных в постоянном доступе. Значит, можно взять 512 Гб, а датасеты, которые пока не хочется удалять, держать вместе с коллекцией домашних фильмов — на отдельном классическом терабайтном диске. Или больше. Сколько нужно и что позволит бюджет.
Собрав основные компоненты, прикидываем, что может дать хозяйству мощность. Тут подумайте о развитии и, например, о второй видеокарте (лучше взять с запасом). И, конечно, надо решить, кто охладит эту мощь. Threadripper-ы греются, как цветочные цены на 8 марта, так что нужна мощная система охлаждения. Формально подойдет сильная воздушная и водяная, но я советую брать водяную: по цене сравнима с сильной воздушной, но не будет постоянного ощущения, что живете на взлетно-посадочной полосе. Плюс, за последнее время количество производителей, предлагающих вменяемые охладители специально для Threadripper, выросло — есть из чего выбрать.
В целом все собрано, осталось упаковать во вместительный корпус — тут советов не будет, это шанс для самовыражения, — можно выбрать тот, который понравится лично вам.
Существуют следующие возможности покупки всего счастья:
- Заказать собрать кому-то внешнему
- плюсы: могут еще раз проверить комплектацию, нет проблем с совместимостью
- минус: ~10-15% стоимости в зависимости от сложности работы и стоимости комплектующих
- Выписать всё на листочек, прийти на Савеловский/Горбушку (если живете в Москве) и собрать там.
- плюсы: точно ничто не побьется при доставке, все сделают при вас, меньше денег за сборку
- минусы: могут быть не самые дешевые компоненты (даже в рамках одного рынка цена прыгает до 50%, плюс за эту цену могу попробовать поставить Б/У)
- Заказать все на Яндекс-маркете
- плюсы: можно дешевый вариант
- минусы: сложно проверить доставку
- Заказать всё за границей (алиэкспресс/ebay)
- плюсы: самый дешевый вариант, сюрприз по приезду
- минус: сюрприз по приезду (серьезно, не надо так – в Спортлото чаще выигрывают)
Когда все приехало и собрано, осталось накатить систему.
Это история для отдельного поста, здесь расскажу вкратце: поскольку я хотел его еще использовать как десктоп и имел предыдущий опыт работы в Linux, то по причине популярности выбрал Ubuntu Linux.
Когда все работает, попросите у своего провайдера статический IP — это бесплатно или недорого и обеспечит доступ к вашим юпитер-ноутбукам почти отовсюду.
Напоследок скажу, что высказал свое мнение, которое сложилось в результате изучения рынка и общения со специалистами. В бюджет я уложился, и почти год чудо современных технологий бесперебойно работает. Через некоторое время поставил jupyterhub и стал пускать друзей, так и живем нашей небольшой коммуной на сервере, да сетки обучаем, чего и вам желаю.
Финальный подсчет (цены начала 2019 года):
Автор: Николай Князев, руководитель группы машинного обучения компании «Инфосистемы Джет»
Читайте также: