Vasiliy
Это какой?
Hog
Как у Айрата! Чо непонятливый какой!
Vasiliy
Айрат тут лишняя абстракция, без обид к Айрату
Ilya
Если у тебя ноут, то подключить 2 4к60фпс моника может быть не тривиальной задачей
Ilya
А 3 вообще не взлетят скорее всего
Ayrat
Да, расскажи, интересно. Тоже думаю насчёт 4К, но опасаюсь, что только для фильмов получится.
Для игры нужна видюха чтобы вытягивать большие разрешения и герцы. Для венды масштабирование рулит
Ayrat
То есть ты будешь смотреть на сглаженные красивые иконки
Ilya
ДокСтанция
Док станция не сможет держать 2х4к
Vasiliy
док станции бывают разные)
Ilya
Использование док-станции Dell WD19 и устранение неисправностей | Dell Россия https://www.dell.com/support/kbdoc/ru-ru/000131784/%D0%B8%D1%81%D0%BF%D0%BE%D0%BB%D1%8C%D0%B7%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D0%B4%D0%BE%D0%BA-%D1%81%D1%82%D0%B0%D0%BD%D1%86%D0%B8%D0%B8-dell-wd19-%D0%B8-%D1%83%D1%81%D1%82%D1%80%D0%B0%D0%BD%D0%B5%D0%BD%D0%B8%D0%B5-%D0%BD%D0%B5%D0%B8%D1%81%D0%BF%D1%80%D0%B0%D0%B2%D0%BD%D0%BE%D1%81%D1%82%D0%B5%D0%B9
Ilya
док станции бывают разные)
Вот например одна из топовых от дела на type c
Anonymous
@omgszer ты недавно книгу по многопоточке советовал, напомнишь название?
Anonymous
@DogeShibu я тут сегодня ниче так распараллелил эту разметку графа, переписал все кхуям на (почти) без блокировок, заметно уменьшил аллокации и нормально распареллил (в коем веке Paralle.For кстати пригодился), поверх этого добра накрутил мемоизацию (кратчайший путь A -> B -> C так же включает в себя кратчайший путь A -> B, т.е. это можно кешировать) и дошел до ~5 вершин в секунду.
Anonymous
На моей тачке в 8 ядер.
Anonymous
Но код въебанный, похож на хуевый С
Doge
Но код въебанный, похож на хуевый С
Это нормально, если хочешь код на языке с JIT'ом оптимизировать.
Doge
А нет, кстати, варианта, вот эту часть расчёта на чем-то более производительном переписать?
Anonymous
На линукс полный пиздец с тулами. Насобирать дамп можно, а увидеть его нет.
Anonymous
Вьюверов нет.
Anonymous
Вьеверы только на венду работают.
Doge
Может напрямую взять си, кресты или вообще раст
Anonymous
и как оно стало?
ну вот примерно 5 в секунду. порядка 18к вершин в час размчатся. то есть, Запорожье за пару часов, а Киев за часов 6.
Anonymous
Я и так не знаю, кто это после меня будет поддерживать. Тут у меня уже чего только нет, и спинвэйты, и интерлокед, и manualreseteventslim, и самописная вэйтгруппа.
Anonymous
И нихуя отсюда не выкинуть, потому что перфоманс заметно проседает.
Doge
ну вот примерно 5 в секунду. порядка 18к вершин в час размчатся. то есть, Запорожье за пару часов, а Киев за часов 6.
Ну вообще отлично. Я вот и предполагал, что оно даже с этим алгоритмом не должно работать настолько медленно, насколько оно работало.
Doge
У меня вон вообще долгое время в коде сидели в стратегических местах явные вызовы префетча
Anonymous
Это уверенные 30/сек
Doge
Это уверенные 30/сек
Теперь для этого надо смотреть в асм и в данные от низкоуровневых профилировщиков.
Doge
а АСМ это что?
Имею в виду в дизассемблированный код после джита
Ayrat
@omgszer
https://www.amazon.co.uk/Acer-Predator-XB271HUbmiprz-ZeroFrame-Adjustable/dp/B017DG09WM
Anonymous
@omgszer https://1lib.eu/book/762703/08e098 this one?
Anonymous
thx
Ayrat
https://www.amazon.co.uk/Acer-Predator-XB271HUbmiprz-ZeroFrame-Adjustable/dp/B017DG09WM
С такими мониками главное не забывать включать 165гц!!1
Anonymous
Имею в виду в дизассемблированный код после джита
еще завтра сборки мусора потрекаю. не могу потрекать сейчас потому что дамп не могут ничем открыть, он бинарный ваще.
Anonymous
а Винды под руками нет
Anonymous
завтра будут искать RDP
Doge
еще завтра сборки мусора потрекаю. не могу потрекать сейчас потому что дамп не могут ничем открыть, он бинарный ваще.
Тут не только на сборку мусора смотреть надо. Я скорее имел в виду проверить, что там с доступом в оперативку и в кэши проца. Плюс какая там загруженность разных execution ports у проца и т.п.
Doge
Начиная с какого-то момента эти вещи критическую роль могут играть
Doge
В особенности, всё что связано с доступом в оперативку. Если в CPU-bound коде у тебя реальный поход в ОЗУ - ты буквально умер.
Anonymous
я такое еще никогда не делал, хоть бы в этот раз тоже не пришлось.
Anonymous
глупость получается немыслимая
Anonymous
взяли язык, который оптимизировать надо на уровне загруженности проца черной магией
Doge
взяли язык, который оптимизировать надо на уровне загруженности проца черной магией
Если ты хочешь максимальной производительности - это на любом языке будет нужно. Просто вопрос в том, что на более низкоуровневых языках такие вещи явнее и проще контроллировать
Anonymous
легче, наверно, на С переписать и ансеф кол этой функции сделать
Doge
В особенности, всё что связано с доступом в оперативку. Если в CPU-bound коде у тебя реальный поход в ОЗУ - ты буквально умер.
Т.е. честное чтение из памяти, а не из кэша - это буквально сотни циклов ожидания.
Anonymous
Да, это я понимаю, но мне чтоб это оптимизировать надо перехерячить представление графа в памяти, чтобы в кеш второго уровня попадало все то, что я потенциально буду читать в ближайшее время?
Vasiliy
юзает кто сейчас paket? я чего-то не догоняю. поставил Paket как я думаю локально внутри папки. Хочу просто скачать нугет и подключить его в fsx. Но пакет упорно качает нугеты в общую большую папку .nuget
Vasiliy
Vasiliy
ну просто интересно всякое потыкать
Ayrat
#r "nuget: Abc, 5.0"
Doge
Да, это я понимаю, но мне чтоб это оптимизировать надо перехерячить представление графа в памяти, чтобы в кеш второго уровня попадало все то, что я потенциально буду читать в ближайшее время?
Тут надо уже с тулзами смотреть, чтобы понять, есть ли с этим проблемы и если есть, то где конкретно. Низкоуровневые профилировщики в это умеют (тот же intel vtune/его амд аналог/и т.п.) и могут вплоть до конкретной инструкции показать есть ли проблемы с кэш миссами. А дальше уже смотреть - оно тупо не лезет в память/не справляется предсказатель переходов/или просто слишком много случайных доступов
Ayrat
Давно уже на коре
Ayrat
Очень давно.
Ayrat
Ооооооооочень
Ayrat
Пакет нужен очень редко. Он решает некоторые проблемы и добавляет новых
Ayrat
Все равно надо постоянно синкать версии пакетов. Если кто-то забыл, ничего не поможет
Ayrat
Типа 1000 проектов, и попиздовал смотреть что апгрейд пакета Foo до 1.1 не тянет за собой транзитивные повышенных версий которые тоже надо везде апнуть. Удобно
Ayrat
Вот прям очень удобно. (Нет)
Anonymous
Конечно
Vasiliy
#r "nuget: Abc, 5.0"
мля, как же все красиво делается) спс. можно было бы обновлять книги что ли
Vasiliy
только Райдер не может в подсветку. Но это норм я так понимаю
Ayrat
Райдер чот не одупляет такой синтаксис
Ilya
А в райдере свой парсер для f#?
Shub
@vl_za у вас там опять интерны в мастер коммитят, похоже: https://fsharp.github.io/FSharp.Data/library/CsvProvider.html
Крылатый
404