IRCaBot 2.1.0
GPLv3 © acetone, 2021-2022
#dev
/2023/02/24
~AreEnn
~R4SAS
~acetone
~orignal
~villain
&N00B
+Xeha
+relaybot
DUHOVKIN
Guest7184
Leopold
Most2
Nausicaa
Ruskoye_911
Vort
anon2
b3t4f4c3
karamba_i2p
nemiga
not_bob_afk
plap
poriori
profetikla
soos
teeth
un
weko_
whothefuckami
orignal ну да
orignal но я в этот тред собираюс еще навешать
orignal суть в выносе этих операций из трапсортов
Vort "<~orignal> но я в этот тред собираюс еще навешать" это хорошо. однако надо бы разобраться, из-за чего получился вот такой результат: "<~orignal> оказывается на флудфиле рашифровка занимает приличную долю проца"
Vort у меня три варианта - 1. ошибка измерений 2. различная нагрузка (атака специально на конекретный узел). 3. процессор, который плохо умеет делать криптографию
weko_ Vort: всё просто
weko_ Джава узлы шлют шифрованное
Vort weko_: и что? они же всем одинаково шлют. почему у меня была нагрузка 0.0004%, а у orignal - "приличная доля" ?
orignal ну например у тебя проц мознее
orignal чем у меня на впс
Vort насколько я помню, у тех криптоалгоритмов есть интересные особенности, позволяющие их значительно оптимизировать
Vort также я видел какие-то ifdef`ы в том коде
orignal да нет это все внутри openssl делается
Vort так что может ещё влиять то, как именно собран код
orignal ifdef это чисто про версии
orignal возможно
Vort сейчас перепроверю
Vort #if OPENSSL_X25519
Vort иначе идёт "ручная" реализация что ли?
orignal оно только в 1.1.1 появилось
orignal раньше не было
Vort такс. вижу у себя call EVP_PKEY_derive_init
Vort значит, у меня OPENSSL_X25519
orignal конечно
Vort а у тебя на впс что?
orignal он у всех есть
orignal да все также
Vort тогда в самой либе ещё есть ветвление
orignal конечно есть
Vort наверно в зависимости от процессора
orignal она проверяет на наличие опредленных инструкции у проца
Vort и на ВПС их может не быть, так?
orignal ну да
Vort в таком случае получается что этот отдельный тред особо полезен для юзеров со старыми процессорами
Vort хотя всё равно я ожидаю от оптимизаций в либе прирост, ну, допустим, в 10 раз, но не в 1000
Vort но, видимо, таки в этом дело
Vort так что условно загадка разгадана
orignal да нет же
orignal в этот тред еще много чего пойдет
Vort ну я про данный момент говорю
orignal да в данный момент все и так хорошо
orignal было нехорошо во время атаки
weko_ Надо ещё проследить, чтобы не слишком загрузить этот тред
weko_ И при надобности сделать разделение на несколько
orignal посмотрим
orignal на самом деле он давно напрашивлся логически
Vort weko_: сколько у тебя ресурсов CPU этот тред потребляет?
Vort допустим, по сравнению с NTCP2 и SSU2 тредами
weko_ Vort: я не смотрел потому что мы другую проблему решали
Vort ок
weko_ Точнее искали источник
weko_ Мне было не до компиляции
Vort кстати, по поводу openssl: либу ведь, небось, можно собрать вообще без оптимизаций под процессоры
Vort так что может быть ещё проблема не в процессоре, а в криво собранной либе
Vort маловероятно, но всё же возможно
orignal там динамечески оно
orignal определяется
orignal чего есть в проце а чего нет
weko_ Нужны ASIC для криптографии :)
orignal еще с 80-х годов есть
orignal вообще то
Vort динамическое определение работает только если никто не догадался его отключить
Vort вроде, ключ no-asm отключает эти оптимизации
Vort можно, конечно, предположить, что тот, кто собирал либу, до этого не догадался )
Vort однако бывает всякое
Vort надо будет, кстати, изучить мне возможности сборки i2pd специально под мой процессор
Vort всё равно вручную собираю, так почему бы не собрать более быстрый вариант
orignal там же ничего собенного нету
orignal только разве что openssl как ты говоришь
orignal но я сомневаюсь что это что то изменит
Vort ну если станет хоть немного лучше, то почему бы и нет
Vort правда, может стать и хуже. я на такое уже попадал как-то раз )
Vort компилятор как-то мне на более навороченной системе команд умудрился сделать более тормозной код :)
orignal сегодня перенесу публикацию в этот тред
Vort окей
Vort а я вот попробую поколдовать с флагами сборки
Vort интересно каков результат будет от -O3 в дебаг режиме :)
Vort пока что не крешнулось. это хорошо :)
R4SAS O3 крайне нестабильно работает. тому пример был с убунтой 21.04_
R4SAS и выше
orignal R4SAS трооли доьрались и до тебя
Vort R4SAS: я не в курсе этой ситуации. сама убунта плохо работала, если её с O3 собирать или i2pd с O3 в убунте?
Vort нестабильность O3 - это признак багов в программе. очень желательно их вылавливать. хотя, понимаю, часто это очень сложно
Vort иногда ещё бывают баги компилятора, но это редкость
R4SAS orignal: всм?
orignal вчера в телегу мне писал некто выдвая за тебя
R4SAS а, я слыхал про такое, от одного нашего общего знакомого
whothefuckami Vort: базу сказал
orignal говорил что срочно требуется помощь ))
whothefuckami Насколько я помню O3 это агрессивные оптимизации, которые ещё и не всегда делают лучше. Зато время компиляции+потребление оперативы во время сборки растёт
whothefuckami Поэтому линуксы собирают с О2
R4SAS Vort: это было где то в районе 2.41
R4SAS orignal: при этом акк был какой то левый?)))
orignal естественно
orignal но внешне копирующий твой
R4SAS ясно
Vort пока что за 1.5 часа с -O3 -march=haswell проблем не возникло. посмотрю, что будет дальше
Vort оперативки и времени на сборку хватает :) к счастью, i2pd не очень прожорлив в этом плане
Vort когда проверял статическим анализатором - заметил странность - почему-то cmake под винду "отключен". что там с ним не так? может, получится починить?
R4SAS Vort: потому что там изначально была сборка под MSVC
R4SAS а под mingw ни кто не делал
Vort cmake`у, вроде, всё равно
Vort ок, понятно
Vort у меня сейчас древнючий MSVC стоит, так что с ним не потестирую
R4SAS я хотел дописать его после того как выпилили поддержку msvc, а потом расхотел
Vort а вот mingw, может, гляну
Vort а чего выпилили? нормальный компилятор
R4SAS это надо весь хлам собирать
Vort а, типа нету пакетного менеджера?
R4SAS при чем пакетный менеджер?
Vort ну зависимости надо самому искать
R4SAS надо собирать openssl, boost, miniupnp
R4SAS а потом, либо их тянуть за собой в репе
Vort в общем, я примерно понял проблему
R4SAS либо писать скрипты для сборки оных
Vort по-моему, достаточно просто юзеру предлагать указывать пути к либам
R4SAS ну, во всяком случае я писать поддержку msvc не собираюсь
Vort окей
R4SAS дописать cmake для msys/mingw еще можно
R4SAS только там тоже надо разбираться
Vort попробую собрать, а там будет видно
R4SAS посмотри как оно сделано в pboted
R4SAS я там его раскурил по полной программе, чтобы оно нормально собирало
relaybot 13trus: R4SAS в коде 2pd.i2p в баннере git.community.i2p на ссылке стоило бы в конце добавить / . Чтобы получилось git.community.i2p (как и на остальных ссылках), потому что из-за отсу <clipped message>
relaybot 13trus: тствия последнего слэша как я заметил браузеры ебланят иногда
relaybot 13trus: i2pd.i2p*
R4SAS trus так сделал бы pr
relaybot 13trus: pr?
R4SAS pull request
relaybot 13trus: я так понимаю на этом самом гите нет кода сайта чтобы pr сделать?
Vort кхм. в pboted идёт проверка if (MSYS). хотя эта переменная только к генератору относится. у меня, к примеру, сейчас ninja установлен. и это не сработает. попробую по-другому
whothefuckami Слууушайте
whothefuckami Вот, мой роутер например в РФ
orignal слушаем
whothefuckami И есть роутер в Украине
whothefuckami Украина блокирует весь трафик с РФ
whothefuckami Сети i2p не вредит?
whothefuckami С новыми профилировщиками там, и ...
Vort во-первых не весь. во-вторых, дальше будет только хуже, по всему миру. сети надо адаптироваться к этому
Vort это не дело юзера изучать блокировочные списки перед установкой узла
whothefuckami нужно делать mesh????
orignal нет конечно
orignal и россия и украина могут соединяться например с сша
orignal тоннели же
whothefuckami А если 0 хопов?
whothefuckami Или владелец туннеля(сша) решает сделать тоннель их двух хопов
whothefuckami И получается сша - россия - украина - входящая точка другого тоннеля
weko Если узел не доступен, это не значит что в этом виноват сам узел. Однако нам не важно почему он не доступен - важно что он не может быть использован
whothefuckami Он ведь в перманентный бан не улетит?
whothefuckami А то когда нибудь
whothefuckami Война кончиться...
orignal перманентных банов вообще быть не должно
whothefuckami А вот в java i2p есть
whothefuckami (Я видел в веб консоли)
orignal ну вот потому это и глупость
weko whothefuckami: перманетнных банов нет
weko Потому что адреса часто меняют владельца
weko Да и человек мог уйти в оффлайн на какое время... Мы должны его "прощать"
weko Другой вопрос какие сроки бана
weko Например за оффлайн узлы не большой срок
weko А за хрень которое отличается от протокола надо дольше банить
weko На дня 3 например
orignal ну да была впс
orignal потом ее откдали другому
orignal и что теперь?
weko Ну или динамический адреса
weko Динамические*
R4SAS подчистил свою репу от старых версий ш2зв и EOL релизов
R4SAS добавил arm64 для кзш
R4SAS rpi*
orignal давно пора
R4SAS всегда бы так
R4SAS 63502 i2pd 20 0 985000 12572 7244 S 0.0 1.3 0:08.54 `- /usr/sbin/i2pd
Vort допинал я cmake до состояния "работает у меня". теперь вопрос - что с этим делать?
R4SAS в плане?
orignal это где такое?
Vort ну... там же ошибка
R4SAS на малине
Vort message(SEND_ERROR "cmake build for windows is not supported
R4SAS ну
orignal ну так там поток нулевой
Vort допустим, я сделаю PR. убирать ошибку что ли?
R4SAS она отключается через CMakeLists.txt
R4SAS убери MSYS2 оттуда
R4SAS не надо полностью
R4SAS и да, ты как cmake скармливаешь? указываешь генератор?
R4SAS или ты msvc впихал?
Vort про проверку "MSYS" я уже выше написал - она у меня не работает
Vort cmake -DWITH_STATIC=ON .
Vort ninja -j 3
Vort я на clang тестировал
Vort из MSYS2
R4SAS так у тебя оно для MSVC же генерирует по дефу, нет?
Vort R4SAS: сможешь допилить в моей ветке? я сделаю PR "как есть"
Vort ну или просто ссылку на коммит кину
R4SAS и зачем ninja?
R4SAS ну скинь
Vort я его для другого проекта ставил, так и остался. ну он нормально работает - пусть живет, мне не жалко
Vort окей, сейчас
R4SAS не хочется тянуть в доки доп зависимости, так что надо бы чтобы оно и с make собиралось
Vort а так это сейчас проверю
Vort я думаю старый генератор тоже живой
R4SAS Vort: а вообще, у тебя под рукой Github Actions
R4SAS добавляй туда действие на сборку под виндами в msys2 с cmake
R4SAS чтобы было видно собирается ли оно на голой системе
R4SAS set(ZLIB_USE_STATIC_LIBS ON) --- а такое разве есть?
R4SAS ага, есть же
Vort в новой версии есть. я вручную себе в msys2 вкорячил
R4SAS вспомнил
Vort так как у меня стоит старая )
Vort в 3.24 добавили
Vort ну я так понимаю со старой версией просто соберётся не до конца статика. но соберётся
R4SAS только я почему то делал еще такое в pboted:
R4SAS set(ZLIB_NAMES libz zlibstatic zlibstat zlib z)
R4SAS видать имя либы в msys2 идет libz
R4SAS этих трех либ может быть недостаточно
R4SAS посмотри в Makefile.mingw
Vort (проверил обычный make. бинарник идентичный)
Vort часть сам cmake находит
R4SAS ок
Vort вопрос в том, что он найти не может, но при этом нужно
Vort вот так сейчас идёт вызов
Vort по поводу zlib - главное, чтобы это изменение что-то в линуксах не поломало
Vort хотя там вроде статика не в почёте
R4SAS не сломает
Vort остальное тут специфично для винды
R4SAS pboted же собирается
Vort а учитывая, что винда вообще не работала, то и не страшно
R4SAS этот set добавлялся в STATIC блок
Vort кстати, у меня rc заработал без дополнительного колдовства
Vort вот этого всего я не делал:
Vort для старых версий cmake было нужно наверно?
Vort ещё по-хорошему, надо было бы проверить upnp. но я никогда с ним не работал, поэтому полноценно потестировать не смогу
Vort так что что произойдёт при его включении - не знаю
R4SAS пофиг на совсем старые
R4SAS главное чтобы не сломало сборку на центоси
R4SAS в .github/workflows/build-windows.yml замени
Vort буста не нашёл нужного
Vort там динамический только был почему-то
R4SAS а я вижу
R4SAS да*
p2w R4SAS: Я убью всю твою семью, ты, польская мразь.
R4SAS p2w: поздравляю.
R4SAS Vort: ^^
R4SAS так что 2 варианта - либо апать версию конфигурации Cmake, либо писать обратную совместимость
Vort так там вроде свежий
R4SAS cmake_policy(VERSION 3.7)
p2w R4SAS: Я найду тебя, и ты будешь умолять, как голодный ниггер в цепях, пока я сдираю кожу со всей твоей семьи заживо.
R4SAS p2w: ага, удачи
Vort 2023-02-24T18:16:43.8298298Z mingw-w64-x86_64-cmake-3.25.2-1-any downloading...
R4SAS приезжай в арктику, поговорим
Vort ну у меня работает даже на более старом cmake
orignal kurwa
Vort там явно чего-то не хватает
p2w R4SAS: Заткнись, блядь, и возвращайся на свою работу с 9 до 5, драить пол до конца своей жалкой жизни, ниггер.
Most3 <q> .
weko а?
Most3 <q> Работает мост?
R4SAS Vort: ну вот, потому и надо разобраться как и почему оно не собирается в обособленных случаях
Vort кажется мне, что это какой-то косяк msys2
R4SAS CI это явный пример того как оно собирается на текущих версиях ПО
Vort да понимаю
Vort у меня есть кое какая догадка
Vort в общем, с boost разобрался
Vort теперь надо разобраться с совместимостью -DWITH_GIT_VERSION=ON и виндовых rc файлов
weko вроде бы уже был такой вопрос, но я не помню -
weko что это за адрес в Tags session - aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa.b32.i2p
orignal не пишет ответ