Page 3 of 4

Уменьшить скорость воспроизведения макроса

Posted: Sat 10 Aug, 2019 01:34
by RoxMarty

Latest post of the previous page:

Wave wrote:
Fri 09 Aug, 2019 22:29
Стартует очень заметно медленней
Да, это прям первое что бросается в глаза. Что мгновенная рабочая лошадка за не одно десятилетие вдруг превратилась будто бы в неповоротливого монстра (и это даже без плагинов дополнительных). Реально сложно описать двумя словами, чем именно лично меня он не устраивает (хотя честно давал ему несколько раз шанс стать основым FAR'ом, даже отказался от части нужных плагинов, но - увы). Пользуюсь тройкой только при необходимости: для юникода (хотя можно и через ConEmu, но там свои причуды и тоже не в пользу скорости работы...), да для плагина FarDroid. Пожалуй, всё... Жаль, что двойку забросили развивать, но и этого вполне достаточно

Уменьшить скорость воспроизведения макроса

Posted: Sat 10 Aug, 2019 15:47
by DrKnS
RoxMarty wrote:
Sat 10 Aug, 2019 01:34
Реально сложно описать двумя словами, чем именно лично меня он не устраивает
Добрый день.

Спешу сообщить вам, что версия 3.x, взятая мной с оф. сайта и запущенная без дополнительных плагинов, макросов и с настройками по умолчанию запускается за X секунд, заходит в папку за X секунд, завершается за X секунд, потребляет X MB RAM.

В то же время версия 2.x, взятая мной с оф. сайта и запущенная без дополнительных плагинов, макросов и с настройками по умолчанию на том же оборудовании запускается за Y секунд, заходит в папку за Y секунд, завершается за Y секунд, потребляет Y MB RAM.

С моей точки зрения, X несоизмеримо больше Y (по усреднённым результатам N экспериментов).
Также я выяснил, что вот такие и такие настройки удовлетворительно работают в 2.x, но крайне негативно влияют на производительность 3.x.

Прошу исправить. Дополнительную информацию готов предоставить по требованию.

Спасибо.


Да, действительно, реально сложно.

Уменьшить скорость воспроизведения макроса

Posted: Sat 10 Aug, 2019 16:11
by Shmuel
DrKnS, ну пусть человек сидит на двойке, если ему нравится...
Да, Фар3 (на моей системе) после перезагрузки OC может запускаться за 10-20 секунд, что несопоставимо с первым запуском Фар2 (1 сек.)
Но я не вижу в этом проблемы, так как последующие запуски Фар3 происходят менее чем за 1 сек.

Уменьшить скорость воспроизведения макроса

Posted: Sat 10 Aug, 2019 17:27
by RoxMarty
DrKnS wrote:
Sat 10 Aug, 2019 15:47
Да, действительно, реально сложно
У меня сейчас совершенно нет времени на основательные тесты (иначе я и не делаю, если берусь) и приоритеты уже изменились. Для себя я уже всё решил на основе многомесячных опытов, результаты которых я, к сожалению, не логгировал сразу. Да и не вижу в этом смысла, т.к. мои единичные проблемы никому не интересны. Новые FAR сейчас используют лишь только экспериментов ради, а не работы для. Лет 10 бы назад я с удовольствием присоединился к тестам, но теперь, увы. Не вижу в этом для себя ничего нового, что можно как-то практически использовать.

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

Уменьшить скорость воспроизведения макроса

Posted: Sat 10 Aug, 2019 17:35
by Shmuel
RoxMarty, всё хорошо в вашем ответе, кроме следующей фразы:
RoxMarty wrote:
Sat 10 Aug, 2019 17:27
Новые FAR сейчас используют лишь только экспериментов ради, а не работы для.
Может быть вы хотели сказать "использую"?
А иначе получается, что я (например) и 99% участников данного форума относятся к какому-то меньшинству, а вы и ещё неизвестно кто - к большинству.
Если это не описка с вашей стороны, то разрешите откланяться.

Уменьшить скорость воспроизведения макроса

Posted: Sat 10 Aug, 2019 18:08
by DrKnS
Shmuel wrote:
Sat 10 Aug, 2019 16:11
ну пусть человек сидит на двойке, если ему нравится...
Я разве против? Если люди хотят пользоваться старыми версиями (по религиозным, политическим, половым или каким-то ещё причинам, не важно) - это их дело и их право.
Но они же приходят и говорят "я вам принес посылку для вашего мальчика, только я вам ее не отдам" "у вас там что-то тормозит, но как воспроизвести - не скажу".
Shmuel wrote:
Sat 10 Aug, 2019 16:11
Фар3 (на моей системе) после перезагрузки OC может запускаться за 10-20 секунд, что несопоставимо с первым запуском Фар2 (1 сек.)
Действительно, я тоже когда-то регулярно наблюдал у себя аномально долгий запуск после перезагрузки и даже собирался его поотлаживать, но потом купил SSD и проблема ушла.
Т.е. скорее всего это про диск.
3 от 2 по большому счёту отличается настройками в SQLite и макросами в lua-файлах. И то, и другое подразумевает небесплатные обращения к ФС, которые ОС, естественно, при последующих запусках кеширует.

Уменьшить скорость воспроизведения макроса

Posted: Sat 10 Aug, 2019 19:00
by S.A.
В Win8/10 со встроенным антивирусом на фар при запуске склонен яростно набрасываться с досмотром Эрих Мильке MsMpEng.exe. Больше плагинов — дольше досмотр.

Можно добавить директорию фара (ну и профиля заодно) в исключения — у меня на этом досмотры при запуске прекращаются.

Именно директорию, не процесс (добавление процесса исключает файлы, к которым обращается процесс, но не сам процесс).

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 10:08
by Shmuel
DrKnS wrote:
Sat 10 Aug, 2019 18:08
Т.е. скорее всего это про диск.
Дополнительное наблюдение показало следующее:
  • после перезагрузки ОС при появлении рабочего стола в течение ещё нескольких минут есть активность чего-то (предположительно Microsoft Security Essentials), причём такая, что тормозит многие аппликации, не только Фар3.
  • если подождать минуты 3 после появления рабочего стола и лишь затем запустить Фар3, то запускается за 1-2 сек.
Поэтому полагаю, что диск здесь не виноват.

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 20:42
by Yegor
Давно уже не по теме, но раз разговор про производительность ведется здесь, я сделал следующий эксперимент:

Есть старый ноут (4.5 года):
- CPU I7-4710HQ
- RAM 16 GB
- Microsoft Windows [Version 10.0.18362.267]

Антивирус выключен.

Создал каталог TEST на обычном HDD (не SDD), файловая система NTFS. Создал в нем 500000 (полмиллиона) файлов.

Открытие каталога в:

Far 3.0.0.5449 x86 (без плагинов)

Unsorted – ~0.5 sec
Sorted (by name) – ~2.7 sec

Делаем вывод, что сортировка около ~2-х секунд.

Far 2.1 build 1807 bis20 x86 (без плагинов)
Unsorted – ~17 sec
Sorted (by name) - ~19 sec

Тоже сортировка около ~2-х секунд или чуть быстрее.

Замерял по таймеру, но на глазок. Результаты очевидны, но очень, возможно, что я что-то не учел важное.

Названия файлов были: 1, 2, 3, ..., 500000

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 21:06
by DrKnS
Yegor, мне, конечно, приятно думать, что 8.5 лет не прошли зря, но разница в 35 раз (без сортировки) - это как-то не очень правдоподобно. Возможно, что-то действительно упущено.
Это ж усредненные результаты, а не "сначала 2 один раз, потом 3 один раз"?
С другой стороны - кто его знает, что это за bis20 и что там улучшили.

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 22:08
by Yegor
DrKnS wrote:
Tue 13 Aug, 2019 21:06
Это ж усредненные результаты, а не "сначала 2 один раз, потом 3 один раз"?
Да, конечно (самые худшие результаты откинул). Запускал раз пятнадцать каждый, все что могло быть закешировано самой ОС, должно было быть закешировано.

Попробую с оригинальным Far 2.0.

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 22:18
by Yegor
Скачал far2.x86.msi с сайта, запустил без плагинов, антивирус выключил + вся папка в эксепшинах + Far.exe тоже в эксепшинах.
Результат ~16.5 секунд в Unsorted режиме.

Пока ХЗ почему такая разница.

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 22:54
by DrKnS
Yegor wrote:
Tue 13 Aug, 2019 22:18
Пока ХЗ почему такая разница
Пальцем в небо:

Память под массив файловых структур в 2 выделялась более-менее похоже на 3: exponential growth, factor = 1.25+256 (сейчас 1.5) т.е. это примерно 30 аллокаций на 500000 элементов и там, и там.

Но.

Far 3 использует стандартные строки, в которых есть SSO. "500000" вроде бы как раз влазит в small buffer, т.е. это 0 дополнительных аллокаций.
Far 2 использовал самописные строки c reference counting без SSO, т.е. это 500000 дополнительных аллокаций (или вообще миллион, потому что есть еще и короткие имена).


Если файлы называть не 1, 2, ..., 500000, а, например, лалалалалалалала_1, лалалалалалалала_2, ..., лалалалалалалала_500000 - разрыв может заметно сократиться.

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 22:58
by 2useven10
Ускорения чтения папок Но ускорение в 30+ раз возможно только если там дерево смогло поучаствовать (не знаю как).

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 23:17
by Yegor
Сделал файлы:
лалалалалалалалалалалалалалалала_1
лалалалалалалалалалалалалалалала_2
...
лалалалалалалалалалалалалалалала_500000

Far 3 Unsorted - 1-1.5 sec
Far 2 Unsorted - 1 min 5 sec

Повлияло, но не на тот...

Скорее всего связанно с конкретными улучшениями типа build 4603. Если это так, то вопрос какой Фар быстрее вообще не должен стоять.

Уменьшить скорость воспроизведения макроса

Posted: Tue 13 Aug, 2019 23:36
by DrKnS
Ну тогда точно не зря :)

Спасибо за эксперименты.

Уменьшить скорость воспроизведения макроса

Posted: Wed 14 Aug, 2019 01:20
by Shmuel
У меня на машине не наблюдается заметной разницы времени входа в папку с полмиллионом файлов между Фар2 и Фар3.
Для сортировки Unsorted: Фар3=850 ms, Фар2 - точно не измерял, по ощущениям - примерно 1 секунда.

P.S. Раскраска отключена в обоих случаях.