Влияние процессора на скорость парсинга

Тема в разделе "Решение проблем с использованием программы", создана пользователем emkub, 12 мар 2020.

  1. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    Здравствуйте, друзья!
    Это и вопросом-то сложно назвать.
    Есть 2 стационарных ПК:
    1. Core i5-3550, 8Гб ОЗУ, Win7 (на SSD)
    2. Celeron 2957U, 4Гб ОЗУ, Win10 (на SSD)

    Оба подключены к роутеру кабелями. Антивирусов нет.
    Есть объёмный проект CD, с прокси.
    Так вот, на первом ПК он отрабатывает за 50 мин, а на втором - за 2 часа. При чем, загрузка ядра процессора на втором при парсинге не превышает 18% (скачкообразно).
    Проверял пару раз. Одинаково.
    Это нормально?

    И вот только сейчас подумал, может ли влиять так сильно на скорость встроенный антивирусный защитник на Win10?
     
  2. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Любые проверяющие программы в большинстве своем тормозят парсинг.
    И процессор, ОЗУ, и версия Win, все это влияет напрямую + загруженность интернет канала.
    Попробуйте отключить защитника и проверить.
     
  3. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Здравствуйте.

    Кеш и тактовая частота данных процессоров отличается более, чем в два раза. Отсюда и разница в производительности.
     
  4. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Если есть желание, можете под хайдом приложить "медленный" проект для выявления и оптимизации используемых в нем функций (что возможно, но не обещаю).
     
  5. kagorec

    kagorec Администратор Команда форума Администратор

    Регистрация:
    3 янв 2011
    Сообщения:
    4.429
    Адрес:
    Latvia
    Предполагаю что это ноутбук (на Celeron) который при нагреве еще понижает мощность процессора.
     
  6. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    Проект прилагать нет смысла - он максимально элементарен. Сбор ссылок по циклу (во вкладке парсинга контента) + условие "обязательная граница". И все.
    Это "стационарный" микро-ПК, с мобильным процом. (Ссылки недоступны для гостей). Вероятность перегрева конечно есть, но только если там плохо сделан теплоотвод, т.к. на ощупь еле теплый.
    Хотя проц даже не поднимается до 20% загрузки.
     
    Последнее редактирование: 12 мар 2020
    kagorec нравится это.
  7. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    В общем, проведу некоторые эксперименты (но уже наверное с другой машинкой - похожей, но помощнее) и отпишусь по результату. Для меня это интересная тема :)
     
  8. Kreol

    Kreol Модератор Команда форума Модератор

    Регистрация:
    6 янв 2013
    Сообщения:
    2.666
    Да и нам будут интересны тесты.
     
  9. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    Однако, озадачен...
    Эпопея продолжается, но разгадки не видно.
    Опускаю из описания пару машин, заведомо слабее по железу.
    В тесте всё тот же
    1. Core i5-3550 (3,3 ггц), 8Гб ОЗУ, Win7 (на SSD)
    и практически идентичный полноразмерный системник
    2. Core i5-4570 (3,2 ггц), 8Гб ОЗУ, Win7 (на SSD)
    Версия windows одинаковая, со стандартными обновлениями.
    Скорость интернета - уже 50 Мбит.
    Так вот, при такой скорости инета, на Первом ПК тот же тестовый проект выполняется 45 минут (на скорости инета 10 Мбит было 50 минут), а на ВТОРОМ ПК - около 1:30 (до конца не ждал, когда стала очевидна разница).

    У меня, честно говоря, на этом этапе закончились разумные мысли. Из различий пк - осталось обновить системный IE на втором пк, так он в проекте парсинга не задействован, не должен никак влиять.
    Не знаю, может быть различные версии Microsoft net framework...
    Вот теперь прикреплю проект, может по нему будет видно, что так может влиять на скорость, какие системные параметры задействованы.
    Нужны любые ваши предположения.
     

    Вложения:

    Последнее редактирование: 1 апр 2020
  10. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    У меня есть горечь и разочарование в компоненте CleverInternet Suite.

    Например, при использовании прокси, компонент, при загрузке URL, может уйти в вечный цикл, заняв одно из ядер процессора полностью.

    Возможно это и замедляет парсинг проекта на одном из ваших ПК.

    Если поможете в тестировании, будет хорошо.

    Проследите за загрузкой ядер процессора при парсинге на том ПК, где у вас медленно идет парсинг.

    Если это подтвердится (загрузка ядер), то проследите наличие этого эффекта на другом ПК (где парсинг идет быстро).

    Если на втором ПК (где парсинг идет быстро), потоки "виснуть" не будут, хорошо бы было разобраться в причинах этого явления путем сравнения двух систем (где парсится медленно и где быстро).

    Разработчики компонента на жалобу о проблеме уже не отвечают целый месяц.

    Причем при использовании написанных нами библиотек (на основе WinInet) таких проблем нет. Но WinInet не поддерживает SOCKS5 прокси (хотя это и не часто требуется).
     
  11. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    Если имеете ввиду 100%-ю загрузку одного ядра, то нет, такого не наблюдается. Общая загрузка всего процессора на core i5-4570 составляет 1-8% (это включая все процессы) и эта нагрузка равномерно распределена между всеми 4-я ядрами. По этому вопросу могу проследить более детально, на каком пк, как сильно задействован проц.
    Проверил явные рограммные различия:
    - На медленном стоит Microsoft net framework 4.8, на быстром Microsoft net framework 4.6.2
    - Набор компонентов Microsoft Visual C++ поставил одинкаовый.

    Хочу попробовать перенести полностью систему с быстрого пк на медленный, хотя конечно не факт, что получится. Всё-таки компоненты все разные.
     
    Root нравится это.
  12. inotoxic

    inotoxic Well-Known Member Пользователи

    Регистрация:
    13 сен 2015
    Сообщения:
    867
    Сделайте образ системы, с помощью загрузочного Acronis True Image, и восстановите на другом пк.
     
  13. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    Именно это и собираюсь сделать
     
  14. Root

    Root Администратор Администратор

    Регистрация:
    10 мар 2010
    Сообщения:
    14.818
    Город:
    Барнаул
    Лучше бы выбрали библиотеку Win (ctrl+h) без дополнительных переносов системы.
     
    emkub нравится это.
  15. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    это могу проверить вот прям щЯс :)
    Отпишусь по результату.

    Запустил. Если верить прогнозу "осталось", то результат будет ошеломительный!

    Проверил на "медленном" ПК Core i5-4570.
    Библиотека Win дала результат 36 минут! Т.е. в 3,3 раза быстрее CIS-библиотеки.
    Загрузка проца при этом составила от 6 до 21% (в среднем около 15%).
    Позже проверю такие же настройки на "быстром" ПК.
     
    Последнее редактирование: 2 апр 2020
  16. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    И теперь НУ ОЧЕНЬ интересно протестить относительно слабые компы (Core i7-4500U и Celeron 2957U)

    И просьба админам переименовать тему, чтобы суть была более ясна.
     
  17. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    Итак, промежуточные результаты тестов.
    Имеем проект, который стандартно выполнялся 50 минут. Есть 3 ПК:
    1. Core i5-3550 (3,3 ггц), 8Гб ОЗУ, Win7 (на SSD)
    2. Core i5-4570 (3,2 ггц), 8Гб ОЗУ, Win7 (на SSD)
    3. Core i7-4650U (1,7 ггц), 8Гб ОЗУ, Win7 (на SSD) - это безвентиляторный микро-пк на ноутбучном процессоре (просто-таки влюбился в эту игрушку).

    Сначала на библиотеке CIS:
    1. 50 минут
    2. 1:зо - 2:оо часа
    3. 2:оо часа

    Тут причина такой разницы на одинаковых машинах 1 и 2 так и не выяснилась.

    После совета Сергея изменил используемую в CD библиотеку с CIS на Win.
    1. 41-45 минут. Средняя загрузка процессора 12-17%
    2. 36-45 минут. Средняя загрузка процессора 12-17%
    3. 35 минут (пока проверил один раз). Средняя загрузка процессора 18-22%

    Есть ещё безвентиляторный микро-пк Celeron 2957U, 4Гб ОЗУ, Win10 (на SSD). Хочу и на нём протестить.
    Наглядное сравнение процессоров: Ссылки недоступны для гостей
     
    Последнее редактирование: 3 апр 2020
    Root нравится это.
  18. inotoxic

    inotoxic Well-Known Member Пользователи

    Регистрация:
    13 сен 2015
    Сообщения:
    867
    Сколько потоков парсинга ?
    Прокси используются ?
    Как ПК в интернет выходят:
    - ethernet
    - wifi
     
  19. emkub

    emkub Active Member Пользователи

    Регистрация:
    16 мар 2015
    Сообщения:
    157
    50 потоков
    прокси используются
    подключение во всех случаях - витая пара (ethernet)
     

Поделиться этой страницей