Форум программистов, компьютерный форум, киберфорум
Процессоры
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/34: Рейтинг темы: голосов - 34, средняя оценка - 4.85
128 / 85 / 22
Регистрация: 24.05.2014
Сообщений: 331

Как увеличить загрузку процессора?

24.08.2017, 19:45. Показов 7576. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем добрый вечер.

Характеристики ПК:
Процессор Intel(R) Pentium(R) CPU J2900 4 ядра 2,4 ГГц
ОЗУ 4 Гб
ОС Win 8.1
Рассчитываю статистические оценки для большого числа моделируемых данных по зацикленному макросу в Excel-2007. При этом процессор загружен примерно на 35%, в том числе ЭКСЕЛЕМ на 28%. Память загружена на 40%, в т.ч. ЭКСЕЛЕМ на 30%. Расчёт всех моделей занимает около 2 месяцев чистого времени.

Для сравнения:
ноутбук Acer Travel Mate 5730
процессор Intel(R) Core (TM2) Due CPU P800 2 ядра, 2,26 ГГц
память 2 ГБ
ОС Win Wista
Эксель-2003
Считает при загрузке процессора и памяти 100%, и в результате в 1,5 раза быстрее, хотя процессор менее мощный.

Пробовал также на ноутбуке с процессором i3 (6 ядер 3,0 ГГц), 4 Гб, Win-8.1, Excel-2010. Считает в 2 раза медленнее, чем первый ПК, при загрузке процессора около 20%.

Возможно ли увеличить загрузку процессора первого ПК для увеличения скорости расчёта? Или, может быть, нужна другая версия Excel?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
24.08.2017, 19:45
Ответы с готовыми решениями:

После замены процессора система саботирует повторную загрузку
Очень нужна помощь профи! Решил апгрейд компьютера сделать, поменять проц. Ранее стоял Intel Core 2 Duo E6420 2.13 ГГц/ 4Мб/...

Как определить загрузку процессора?
Добрый день, мне нужно создать код для выдачи по запросу загрузки процессора в процентах через именованный канал. Вся заготовка уже...

[РЕШЕНО] STM. Как определить загрузку процессора?
Собираю проект для STM32F4. Среда Keil. Возник вопрос: Как определить загрузку процессора? Учитывая что всё крутиться по ОСью RTX...

15
Эксперт по электронике
6825 / 3250 / 337
Регистрация: 28.10.2011
Сообщений: 12,703
Записей в блоге: 7
24.08.2017, 19:49
При такой постановке задачи, чтобы увеличить загрузку процессора нужно поставить 2-ух или еще лучше одноядерный процессор.
Дело в том что выполняется однопоточное вычисление. Программу нужно переписать так чтобы было многопоточным иначе не получится задействовать все ядра процессора.
1
Форумчанин
5959 / 4193 / 406
Регистрация: 28.12.2013
Сообщений: 24,134
24.08.2017, 19:50
Цитата Сообщение от retros Посмотреть сообщение
Или, может быть, нужна другая версия Excel?
да,или формула кривая
1
128 / 85 / 22
Регистрация: 24.05.2014
Сообщений: 331
24.08.2017, 19:59  [ТС]
Но работают 4 логических процессора. Прилагаю скрин. Цифровые показатели неверные, т.к. скрин сразу после остановки макроса, иначе не сделать скрин. Или всё равно один поток? Я не совсем в курсе.
Миниатюры
Как увеличить загрузку процессора?  
0
128 / 85 / 22
Регистрация: 24.05.2014
Сообщений: 331
24.08.2017, 20:03  [ТС]
Цитата Сообщение от WyPik Посмотреть сообщение
да,или формула кривая
Видимо, Эксель-2003? А кривая формула - это неоптимальный макрос?
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
24.08.2017, 20:29
Цитата Сообщение от retros Посмотреть сообщение
Но работают 4 логических процессора
Это операционная система ставит исполнение счётной задачи по очереди на все ядра. Скорее всего для равномерного прогрева

Цитата Сообщение от retros Посмотреть сообщение
Для сравнения:
ноутбук Acer Travel Mate 5730
процессор Intel(R) Core (TM2) Due CPU P800 2 ядра, 2,26 ГГц
память 2 ГБ
ОС Win Wista
Эксель-2003
Считает при загрузке процессора и памяти 100%, и в результате в 1,5 раза быстрее, хотя процессор менее мощный.
Кстати, такого процессора я не нашёл. Если имелся в виду P8800, то у него ядра более быстрые, чем на J2900. Так что разница в 1.5 раза на однопоточной задаче - это нормально (т.е. соответствует истине)

Правда не понятно, откуда рисуется загрузка процессора в 100%. Но фиг знает, как там на висте считалось/рисовалось

Добавлено через 2 минуты
На висте памяти всего 2 гига. Т.е. возможно имеет место быть нехватка памяти. Т.е. 100% загрузки процессора скорее всего берётся из того, что, грубо говоря, одно ядро занимается расчётами, а второе занимается неблагодарной работой по перекачке памяти на диск и обратно. Т.е. 100% загрузка процессора получается из-за того, что процессор делает много ненужных вещей. Это просто как один из вариантов объяснения
1
128 / 85 / 22
Регистрация: 24.05.2014
Сообщений: 331
24.08.2017, 20:59  [ТС]
Цитата Сообщение от Evg Посмотреть сообщение
Это операционная система ставит исполнение счётной задачи по очереди на все ядра.
Настроить ОС одновременно на все ядра, видимо, невозможно?
Цитата Сообщение от Evg Посмотреть сообщение
Если имелся в виду P8800, то у него ядра более быстрые, чем на J2900
Цитата Сообщение от Evg Посмотреть сообщение
разница в 1.5 раза на однопоточной задаче - это нормально (т.е. соответствует истине)
Но у i3, как я понимаю, ядра должны быть ещё быстрее. Но считает ещё медленнее. Кстати, я ошибся, там не 6 ядер, а 2, логических процессоров 4.
Насчёт марки и загрузки процессора в Висте прилагаю скрины. Цифры для процессора неверны, т.к. после остановки макроса, но по диаграмме видно, что 100%..
Ещё вопрос: использовать ПК с 8 ядрами и 16 ГГб, видимо, ничего не даст?
Миниатюры
Как увеличить загрузку процессора?   Как увеличить загрузку процессора?  
0
128 / 85 / 22
Регистрация: 24.05.2014
Сообщений: 331
24.08.2017, 21:00  [ТС]
Цитата Сообщение от Evg Посмотреть сообщение
Это операционная система ставит исполнение счётной задачи по очереди на все ядра. Скорее всего для равномерного прогрева



Кстати, такого процессора я не нашёл. Если имелся в виду P8800, то у него ядра более быстрые, чем на J2900. Так что разница в 1.5 раза на однопоточной задаче - это нормально (т.е. соответствует истине)

Правда не понятно, откуда рисуется загрузка процессора в 100%. Но фиг знает, как там на висте считалось/рисовалось

Добавлено через 2 минуты
На висте памяти всего 2 гига. Т.е. возможно имеет место быть нехватка памяти. Т.е. 100% загрузки процессора скорее всего берётся из того, что, грубо говоря, одно ядро занимается расчётами, а второе занимается неблагодарной работой по перекачке памяти на диск и обратно. Т.е. 100% загрузка процессора получается из-за того, что процессор делает много ненужных вещей. Это просто как один из вариантов объяснения
А память в Висте занята на 50%, я ошибочно написал, что на 100.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
25.08.2017, 15:37
Цитата Сообщение от retros Посмотреть сообщение
Настроить ОС одновременно на все ядра, видимо, невозможно?
Дело не в ОС, а в приложении. Оно работает в один поток. Один поток по определению не может загрузить 2 и более ядер

Цитата Сообщение от retros Посмотреть сообщение
Но у i3, как я понимаю, ядра должны быть ещё быстрее. Но считает ещё медленнее
i3 бывают разные. В любом случае без конкретного описания всей системы и софта - это разговор ни о чём. Когда ты сравнивал висту и восьмёрку, эксперимент уже сам по себе был "грязный" из-за использования разных версий экселя

Цитата Сообщение от retros Посмотреть сообщение
Насчёт марки и загрузки процессора в Висте прилагаю скрины
Тут нет эффекта, о котором я предположил в посте #6. В итоге не понятно, как на висте загружаются два ядра. Тут либо различное поведение различных версий экселя, либо на двух компах запускается не одно и то же (т.е. некорректно поставлен эксперимент), либо ты чего-то недоговариваешь, либо хз что

Цитата Сообщение от retros Посмотреть сообщение
Ещё вопрос: использовать ПК с 8 ядрами и 16 ГГб, видимо, ничего не даст?
Для начала надо понять, откуда в висте взялась загрузка двух ядер. Т.е. объяснить непонятное расхождение в эксперименте. Если разные какие-то версии экселя умеют распараллеливать, то надо разобраться, как именно. Если умеют распараллеливать широко, то на 8-ядерном процессоре будет ещё лучше. Если реального распараллеливания нет, то нужно брать процессор с наиболее высокой производительностью одного ядра (и тут уже пофиг, сколько ядер)

Добавлено через 4 часа 1 минуту
Цитата Сообщение от retros Посмотреть сообщение
Пробовал также на ноутбуке с процессором i3 (6 ядер 3,0 ГГц), 4 Гб, Win-8.1, Excel-2010. Считает в 2 раза медленнее, чем первый ПК, при загрузке процессора около 20%.
Как-то эту мысль сразу не увидел. i3 - понятие очень растяжимое, особенно на ноутбуках, где используют кастрированные версии процессоров. Пиши конкретную модель. Т.е. для старых ноутбучных версий такое поведение вполне укладывается в концепцию запуска однопоточного приложения.

В любом случае у тебя тут имеет место быть зоопарк из excel'ей и он тоже может влиять, а не только зоопарк из процессоров
1
157 / 300 / 47
Регистрация: 14.08.2012
Сообщений: 2,578
25.08.2017, 22:48
Evg, Насчёт распараллеливания можно понять одно: Excel считает каждую ячейку в отдельном потоке. Что безусловно очень хороший ход при использования маркёра растягивания.
Мне вот интересно: Каким макаром вычисления статистических данных, а насколько это понятно - это вероятности, могут занимать так много времени? Я понимаю, что мы имеем дело с бесконечно зацикливающимися рядами (наподобие числа, где бесконечно идёт корень в корне и т.п.), но если учитывать инженерную точность в 10 знаков после запятой, то можно получить не более 15-20 минут работы в одном потоке для работы этого вычисления в 500 тыс. начальных данных. Для вероятностей же есть специальные функции в Excel и опять же они вычисляют ряды попроще.
Наилучшим путём будет создание программы, которая раскидает вычисления на чётное число потоков и они используя всю мощность вашего процессора рассчитает вам это быстрее в число раз кратное числу потоков обработчиков.
1
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
26.08.2017, 10:05
Цитата Сообщение от саша40 Посмотреть сообщение
Excel считает каждую ячейку в отдельном потоке. Что безусловно очень хороший ход при использования маркёра растягивания
Я вообще не знаю, как работает Excel, если что

Но по приведённым данным я не могу понять различие во времени на разных конфигурациях. Особенно графики загрузки. Т.е. я вижу противоречие между графиками из постов #4 и #7. Противоречие софтовое. В моём понимании в первую очередь речь идёт о том, что excel работает по разному. Я это связывал с разными версиями excel'я. Из твоих слов в принципе может получаться так, что подход "каждую ячейку в отдельном потоке" не может нагрузить полностью процессор, например, из-за того, что происходят частые ожидания. Это могло бы объяснить неполную загрузку в посте #4 или, например, различное поведение при двух и четырёх ядрах. Но без хорошего понимания, как построен счётный процесс, сложно что-то конкретное порекомендовать ТС'у: что ему критично - быстрое ядро или количество ядер. Понятно, что покупка 7700k увеличит скорость в разы, но это может оказаться дорогим по финансам
1
157 / 300 / 47
Регистрация: 14.08.2012
Сообщений: 2,578
26.08.2017, 10:59
Evg, Я бы порекомендовал обратится к программисту, работающему с базами данных.
Попробуем взглянуть иначе: Если учитывать, что первые массовые многоядерные процессоры появились в 2007-2008 году, то наилучшем решением будет порекомендовать ТС ту версию Excel, которая использует многоядерную архитектуру, например, Microsoft Excel 2010, поправьте если ошибаюсь.
Дополнительно выходит два набора:
1) Intel Core I7 c HTT, начиная с Sandy Bridge с разгоном до 4000-4500 МГц и оканчивая Haswell + ОЗУ DDR3 от 1600 МГц, дальше особого смысла нет - слишком много денег уйдёт впустую.
2) Intel Core I5 или I7 с HTT от 6 ядер(Haswell-E, Broadwell-E, Сhipset X99) + ОЗУ DDR3 от 1866 МГц в многоканальном режиме работы.
Можно взять относительно бюджетный XEON, он хорошо разгоняется и имеет достаточно мощные 4 ядра.
Что-то аналогичное можно найти и от AMD.
1
128 / 85 / 22
Регистрация: 24.05.2014
Сообщений: 331
26.08.2017, 19:15  [ТС]
Я поставил для пробы на ноутбук с ВИСТОЙ версию ЭКСЕЛЬ-2007.. Скорость расчёта не изменилась. Видимо, всё-таки дело в скорости ядер независимо от их количества, и может быть, в ОС. И, наверно, надо написать оптимальный макрос, поскольку имеющийся написан через макрорекордер. Но это уже из другого раздела.
Прилагаю электронную книгу - может быть, кому-то любопытно. В столбце В моделируется выборка из десяти значений равномерно распределённой случайной величины. В ст. К они преобразуются в бета-распределение с некоторыми параметрами. В столбцах С..J промежуточные расчёты. В L3:Q3 окончательный расчёт шести статистических критериев. Макросом 7 (Ctrl-ф) эти значения копируются в соседние ячейки уже в виде чисел, а затем блок R2:W50002 перемещается на одну сроку вниз. Макрос 8 (Ctrl-и) зацикливает макрос 7. В каждом цикле числа из столбца В обновляются, и соответственно пересчитываются значения критериев. Остановка макроса - клавиша Esc. Вообще, таких строк надо 1 млн. для каждого из 4х бета-распределений, но сразу ставить на 1 млн. - будет очень медленно. Поэтому делаю 20 раз по 50 тыс. Но потом надо ещё всё то же самое для выборок объёмом 20, 30, 40, 50, 100, 150, 200, 300, или хотя бы для части из них. Потом все эти результаты надо обработать, но это уже мелочи.
Писать специальную программу без использования ЭКСЕЛЯ, наверно, нет смысла, т.к. просчитываю много разных статистических задач, не писать же каждый раз новую программу. Кроме того, в такую программу надо включать обработку результатов.
Благодарю всех, кто откликнулся.
Вложения
Тип файла: zip ВСЕ Б3 10.zip (168.6 Кб, 7 просмотров)
1
157 / 300 / 47
Регистрация: 14.08.2012
Сообщений: 2,578
26.08.2017, 20:13
retros, Вопрос на засыпку: Сколько времени занимает работа процессора на обработки 1000 строк данных? Попробуйте засечь и выдать как можно более точное время.
Работа с база данных и Big Data уже давно известна среди программистов. Если требуется обработать действительно миллионы исходных данных, то тут используют мощности уже не процессора, а видеокарты. Технологии CUDA и OpenCL вам в ознакомление. Так же можно использовать софт, который в многопоточном режиме решит вашу задачу намного быстрее чем Excel 2007. Но переубеждать не буду. Тема закрыта.
1
128 / 85 / 22
Регистрация: 24.05.2014
Сообщений: 331
27.08.2017, 22:05  [ТС]
Цитата Сообщение от саша40 Посмотреть сообщение
Сколько времени занимает работа процессора на обработки 1000 строк данных?
1000 строк рассчитываются за 217 секунд.
0
157 / 300 / 47
Регистрация: 14.08.2012
Сообщений: 2,578
28.08.2017, 13:35
retros, Я думал будет быстрее. Хотя уже выше привёл оптимальный вариант ответа на ваш вопрос. Возможности Excel тут выгодно использовать для ввода исходных данных и вывода итогового результата с последующей постройкой графика по нему. В противном случае вы очень много времени теряете на перерисовку окна(repaint window - в программирование это так называется), а использование одного потока ничего в итоге не даст, кроме как потери нервов, сил и времени на попытки разогнать его. Перерисовкой я могу объяснить неполную загрузку процессора - процессор часть времени просто "простаивает"(see your messages with screenshots of task messager).
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
28.08.2017, 13:35
Помогаю со студенческими работами здесь

Как уменьшить загрузку процессора на виртуальной системе?
Ну вобщем поставил я себе Ubuntu 13.04 32-х разрядную в VirtualBox, выделил я ей 768 Мб памяти, 1 ядро из двух (ЦП Pentium B960 2*2,2 Ггц)....

Как просмотреть в форме загрузку процессора в Win2k
Если писать также как в 98-ом, то не работает, то есть ничего не выдает.

Как узнать текущую загрузку процессора, памяти и сети?
Подскажите, как узнать текущую нагрузку на процессор, загрузку памяти, интернет-канала через cmd?

Как определить загрузку процессора на сервере центоз через php
Здравствуйте, уважаемые знатоки, вопрос следующий - Как определить загрузку процессора(памяти и канала) на сервере центоз через php?...

Как найти загрузку процессора для каждого запущенного процесса в процентах?
Подскажите, как найти загрузку процессора для каждого запущенного процесса в процентах на C# У меня получается как-то так: Вот...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере нетипового документа выдачи шин для спецтехники с табличной частью, разработанного в конфигурации КА2. Номеклатура. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru