Pavel3333 1,148 #430494 Posted May 13, 2018 5 минут назад, Mixaill сказал: пропишу тут явно тем самым Вы зададите повышенный приоритет того, что функция будет inline'овая, но инлайнить ее или нет - решит компилятор. Share this post Link to post Short link Share on other sites
GPCracker 2,088 #430495 Posted May 13, 2018 (edited) @StranikS_Scan, @Pavel3333, когда-то давно я от скуки сидел гуглил, уже правда не помню что, но наткнулся на это. Весьма интересный материал, я бы сказал. Edited May 13, 2018 by GPCracker 1 Share this post Link to post Short link Share on other sites
Scharfhobel 216 #430496 Posted May 13, 2018 Снёс хвм, клиент грузиться прям моментально. А я картофель ругал.. Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #430497 Posted May 13, 2018 @GPCracker тоже читал, но не стоит оно того :) а вот оптимизация Питона - это настоящее кредо... @Scharfhobel Совместными усилиями дай Бог и XVM станет грузиться быстрее ;) 1 Share this post Link to post Short link Share on other sites
StranikS_Scan 4,210 #430498 Posted May 13, 2018 Только что, GPCracker сказал: @StranikS_Scan, @Pavel3333, когда-то давно я от скуки сидел гуглил, уже правда не помню что, но наткнулся на это. Весьма интересный материал, я бы сказал. Одна жды один человек написал: "Когда на питоне начинаются разговоры про быстроту я сразу волнуюсь" © ВЛ Share this post Link to post Short link Share on other sites
GPCracker 2,088 #430500 Posted May 13, 2018 (edited) 58 minutes ago, Pavel3333 said: тоже читал, но не стоит оно того Видимо ты не совсем внимательно читал. Ибо внимательный бы заметил, что компилятор съедает константные инструкции даже на нулевом уровне оптимизации, на последующих он начинает сжирать часть функций (как именно он выбирает, что ему сожрать, а что нет, я пока не разобрался толком). Говнокодеру с оптимизацией неправильно выбранных алгоритмов он конечно не поможет, а вот грамотному программисту может серьезно упростить жизнь, ибо делает написание кода более удобным за счет эффективной оптимизации разнообразного сахара. 58 minutes ago, Pavel3333 said: а вот оптимизация Питона - это настоящее кредо... Если продолжить написанное ранее, оптимизация по скорости работы это в первую очередь оптимизация алгоритма. Алгоритма, Паша! Не языка программирования, не процесса компиляции этого в исполняемый код. Алгоритма. Проблема скорости работы кода на 90%, если не более, лежит именно в алгоритмах. Потому как большая часть всех тормозов - это либо неправильно выбранный алгоритм (когда можно сделать существенно проще, и при этом корректно будут выполняться все возможные кейсы), либо ограничения самого алгоритма (к примеру, людям не известны способы организации сортировки со сложностью быстрее O(n), и то это только для самого лучшего случая). И именно поэтому нужно в первую очередь анализировать написанный тобой алгоритм на предмет нецелесообразных вычислений, а уже только потом пытаться оптимизировать процесс выполнения этого алгоритма. Если брать пример, что называется, на месте, то текущая проблема с медленной загрузкой связана именно с ненужными вычислениями, но никак не с тем, что компилятор что-то там неэффективно компилирует. Edited May 13, 2018 by GPCracker Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #430515 Posted May 13, 2018 4 часа назад, GPCracker сказал: Если продолжить написанное ранее, оптимизация по скорости работы это в первую очередь оптимизация алгоритма. Алгоритма, Паша! У меня хорошо оптимизированный говнокод, я даже следую PEP8! 1 Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #430568 Posted May 14, 2018 @Mixaill, будут ли проводиться изменения в XFW Native? Share this post Link to post Short link Share on other sites
SkepticalFox 1,445 #430589 Posted May 14, 2018 On 13.05.2018 at 5:20 PM, Pavel3333 said: тем самым Вы зададите повышенный приоритет того, что функция будет inline'овая, но инлайнить ее или нет - решит компилятор. forceinline же а вообще глупости какие-то хотя и я вот думал, что можно вместо поиска по строке использовать поиск по хешу внутри двоичного дерева... Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #430594 Posted May 14, 2018 32 минуты назад, SkepticalFox сказал: а вообще глупости какие-то конкретно? 32 минуты назад, SkepticalFox сказал: вместо поиска по строке использовать поиск по хешу внутри двоичного дерева... подробнее? Share this post Link to post Short link Share on other sites
Mixaill 1,740 #430899 Posted May 17, 2018 com.modxvm.xfw.native_1.2.0.00044.wotmod Попробуйте, со второго запуска должно быть шустрее. 1 Share this post Link to post Short link Share on other sites
Scharfhobel 216 #430905 Posted May 17, 2018 (edited) 1 час назад, Mixaill сказал: com.modxvm.xfw.native_1.2.0.00044.wotmod Попробуйте, со второго запуска должно быть шустрее. чуточку шустрее. Питон Цитата 8-05-17 23:46:01.760: INFO: [XFW] Loading mod: com.modxvm.xfw.wotfix, v. 7.6.1.947 2018-05-17 23:46:01.916: INFO: [XFW] Loading mod: com.modxvm.xfw.crashfx, v. 7.6.1.947 2018-05-17 23:46:01.921: INFO: [XFW/VFS][c_extension_load] Native module loading error: 2018-05-17 23:46:01.922: ERROR: Traceback (most recent call last): 2018-05-17 23:46:01.922: ERROR: File "mods/xfw/python/xfw/vfs.py", line 166, in c_extension_load 2018-05-17 23:46:01.922: ERROR: RuntimeError: [XFW/Crashfix] FAIL: function not found 2018-05-17 23:46:01.922: ERROR: 2018-05-17 23:46:01.922: INFO: ============================= 2018-05-17 23:46:01.922: INFO: [XFW/Crashfix] Crash fix was applied. Edited May 17, 2018 by Scharfhobel Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #430910 Posted May 18, 2018 @Mixaill аналогично. *** [XFW/VFS][c_extension_load] Native module loading error: *** Traceback (most recent call last): *** File "mods/xfw/python/xfw/vfs.py", line 166, in c_extension_load *** RuntimeError: [XFW/Crashfix] FAIL: function not found *** *** ============================= *** [XFW/Crashfix] Crash fix was applied. @Mixaill замерил время. Первый запуск: *** time start: 3.92869420027e-07 загрузка XFW *** time end: 45.8628795364 В следующем запуске клиент загружается моментально: *** time start: 3.92869420027e-07 загрузка XFW *** time end: 1.37995069489 то есть этим решением мы добились увеличением производительности XFW в 45 раз! Спасибо! Share this post Link to post Short link Share on other sites
GPCracker 2,088 #430913 Posted May 18, 2018 34 minutes ago, Pavel3333 said: То есть этим решением мы добились увеличением производительности XFW в 45 раз! Сорок с лишним секунд на загрузку вместо одной-двух это нехилая такая просадка. Я конечно предполагал, что этот самый поиск дает существенное падение производительности, но чтобы настолько... Не понимаю только почему это сразу не пофиксили. Share this post Link to post Short link Share on other sites
Mixaill 1,740 #430918 Posted May 18, 2018 (edited) 6 часов назад, GPCracker сказал: Не понимаю только почему это сразу не пофиксили. 40 - это как-то слишком дофига. У меня разница вообще незаметна на ноутбучном i7 Haswell. Edited May 18, 2018 by Mixaill 1 Share this post Link to post Short link Share on other sites
sirmax 5,499 #430920 Posted May 18, 2018 19 минут назад, Mixaill сказал: 40 - это как слишком дофига. У меня разница вообще незаметна на ноутбучном i7 Haswell. +1 Share this post Link to post Short link Share on other sites
GPCracker 2,088 #430922 Posted May 18, 2018 21 minutes ago, Mixaill said: 40 - это как слишком дофига. У меня разница вообще незаметна на ноутбучном i7 Haswell. Вполне возможно что либо медленная память, либо вообще от нехватки оперативной памяти клиент свопается на медленный хард со всеми вытекающими. Но факт остается фактом - на некоторых конфигурациях железа оптимизация дает существенное улучшение производительности. @Pavel3333, в таком случае конфигурацию железа по возможности в студию. Share this post Link to post Short link Share on other sites
Pavel3333 1,148 #430925 Posted May 18, 2018 30 минут назад, GPCracker сказал: @Pavel3333, в таком случае конфигурацию железа по возможности в студию. В 16 часов по МСК дам полный дамп, сейчас по памяти. Проц AMD Phenom II X3 710 Память 2x2GB DDR2 667MHz Материнка Gigabyte GA-MA78LM?? HDD WD Blue 500GB Share this post Link to post Short link Share on other sites
GPCracker 2,088 #430927 Posted May 18, 2018 (edited) 32 minutes ago, Pavel3333 said: Память 2x2GB DDR2 667MHz Ты где откопал такого динозавра? Они разве еще не вымерли? Кстати, наверное будет в тему :) Edited May 18, 2018 by GPCracker Share this post Link to post Short link Share on other sites
krok65 79 #430930 Posted May 18, 2018 12 часов назад, Mixaill сказал: com.modxvm.xfw.native_1.2.0.00044.wotmod Попробуйте, со второго запуска должно быть шустрее. Реально быстро стало грузиться.Разницы с загрузкой на чистом клиенте практически нет.Спасибо что оптимизировали,а то перед этим вообще жесть была. Share this post Link to post Short link Share on other sites