https://youtu.be/M2fKMP47slQ
Прикольный доклад про хешмапы, интересные вариации
https://engineering.fb.com/2019/04/25/developer-tools/f14
https://abseil.io/about/design/swisstables собственно как я понимаю та табличка которая в докладе аналог google flat 16
Ну вообще видимо действительно лучше работает с sse проверкой хешей н для большинства задач раз все юзают. Я видел пару больших бенчей, но если честно не особо доверяю им, так что без ссылок
Прикольный доклад про хешмапы, интересные вариации
https://engineering.fb.com/2019/04/25/developer-tools/f14
https://abseil.io/about/design/swisstables собственно как я понимаю та табличка которая в докладе аналог google flat 16
Ну вообще видимо действительно лучше работает с sse проверкой хешей н для большинства задач раз все юзают. Я видел пару больших бенчей, но если честно не особо доверяю им, так что без ссылок
YouTube
C++Now 2018: You Can Do Better than std::unordered_map: New Improvements to Hash Table Performance
http://cppnow.org
—
Presentation Slides, PDFs, Source Code and other presenter materials are available at: http://cppnow.org/history/2018/talks/
—
The hash table is probably the most important data structure. Because of that importance, there is a large zoo…
—
Presentation Slides, PDFs, Source Code and other presenter materials are available at: http://cppnow.org/history/2018/talks/
—
The hash table is probably the most important data structure. Because of that importance, there is a large zoo…
Я бы хотел на выходных разобрать и написать сюда про какой-нибудь код из какой-нибудь плюсовой либы. Из того что еще не смотрел, при этом хочется что-то интересное. Знаю что требования говно, но кому не лень напишите варианты, мб чтото интересное вам.
https://youtu.be/60XhYzkXu1M
Довольно приятный и несложный доклад про оптимизацию лру. Бтв интрузив контнейры классные, не знаю почему, но часто сталкивался с мнением что они неудобные етс. В общем я не согласен и рекомендую)
Довольно приятный и несложный доклад про оптимизацию лру. Бтв интрузив контнейры классные, не знаю почему, но часто сталкивался с мнением что они неудобные етс. В общем я не согласен и рекомендую)
YouTube
02. Ещё чуть быстрее делаем свой контейнер - Антон Полухин
Loser story
Я бы хотел на выходных разобрать и написать сюда про какой-нибудь код из какой-нибудь плюсовой либы. Из того что еще не смотрел, при этом хочется что-то интересное. Знаю что требования говно, но кому не лень напишите варианты, мб чтото интересное вам.
С одной стороны прикольно, почитал статью (одну уже видел), с другой самому что-то интересное написать не получилось https://gist.github.com/MBkkt/0ff3878266f57f8f45830282d0b58752 Ну в общем мда
Блять я не верующий человек, но надеюсь для тех кто придумал wix есть отдельный котел в аду, пиздец какое же дерьмо одна строчка в баше заменяется 100 в нем кайф
Кст, я один тот шиз который когда генерит uuid проверят, что он не совпадает с уже сгенеренными кем то раньше(ну речь про исходные коды), я понимаю что шанс не реален, но бля когда я думаю о такой баге мне становится очень страшно и я все равно проверяю
https://mirrors.edge.kernel.org/pub/linux/kernel/people/paulmck/perfbook/perfbook.html
Мне казалось я кидал ссылку на эту книжку, но оказалось что нет, держите. Очень интересная и вообще рекомендую
Мне казалось я кидал ссылку на эту книжку, но оказалось что нет, держите. Очень интересная и вообще рекомендую
Накидайте в коменты или лс каких-нибудь интересных каналов/подкастов про плюсы, графику, распределенные системы, многопоточку, операционные системы, про компиляторы тоже можно, но они все ещё говно. Если в итоге что-то из того что я читаю не скинут я тоже скину ы
Как именно вы бы обработали то, что список может измениться?
Ну кажется тупое решение очевидно, скопировать список перед нотификациями, но это кажется дорогим.
Из того, что мне пришло в голову это помимо списка наблюдателей, завести список действий добавить/удалить/етс наблюдателя и выполнять его в начале метода notify
На работе у нас используется первый подход, с некоторыми оптимизациями, например наблюдатели копируются в small_vector, если их немного он не полезет в кучу и сохранит их на стеке.
Ну кажется тупое решение очевидно, скопировать список перед нотификациями, но это кажется дорогим.
Из того, что мне пришло в голову это помимо списка наблюдателей, завести список действий добавить/удалить/етс наблюдателя и выполнять его в начале метода notify
На работе у нас используется первый подход, с некоторыми оптимизациями, например наблюдатели копируются в small_vector, если их немного он не полезет в кучу и сохранит их на стеке.
https://gist.github.com/zeux/3ce4fcc3a43072b4315abde95319ecb6
Прикольные замеры, хотя я и полностью солидарен с тем что какой-нибудь хромиум куда интереснее.
Кст библиотека meshoptimizer тоже выглядит интересной, но пока не разбирался подробно
Прикольные замеры, хотя я и полностью солидарен с тем что какой-нибудь хромиум куда интереснее.
Кст библиотека meshoptimizer тоже выглядит интересной, но пока не разбирался подробно
Gist
How does clang 2.7 hold up in 2021?
How does clang 2.7 hold up in 2021? GitHub Gist: instantly share code, notes, and snippets.
Прикольный пост про преподавание проги https://vas3k.club/post/938, я не препод, но был студентом на многих курсах, и как студент согласен практически со всем
https://www.ralfj.de/blog/2020/12/14/provenance.html интересный пост про баг в оптимизации ир, ну и собственно что с этим можно сделать. Ну а возникает из-за того что компилятор учитывает то что указатели это не просто числа
www.ralfj.de
Pointers Are Complicated II, or: We need better language specs
Some time ago, I wrote a blog post about how there’s more to a pointer than meets the eye. One key point I was trying to make is that just because two pointers point to the same address...
https://stackoverflow.com/questions/11761703/overloading-macro-on-number-of-arguments прикольно придумано
Stack Overflow
Overloading Macro on Number of Arguments
I have two macros FOO2 and FOO3:
#define FOO2(x,y) ...
#define FOO3(x,y,z) ...
I want to define a new macro FOO as follows:
#define FOO(x,y) FOO2(x,y)
#define FOO(x,y,z) FOO3(x,y,z)
But this does...
#define FOO2(x,y) ...
#define FOO3(x,y,z) ...
I want to define a new macro FOO as follows:
#define FOO(x,y) FOO2(x,y)
#define FOO(x,y,z) FOO3(x,y,z)
But this does...
Loser story
10.1.1.59.3971.pdf
Наткнулся на любопытный вариант имеющий смысл для линий толщина которых зависит от масштаба: https://www.imaginationtech.com/blog/grlaa-for-anti-aliasing-in-nav-applications
Вообще вопрос известный, например есть глава в гемсах древних на тему:
https://developer.nvidia.com/gpugems/gpugems2/part-iii-high-quality-rendering/chapter-22-fast-prefiltered-lines
Хотя сейчас не советую рисовать линии как gl_lines так как нельзя за один вызов отрисовать линии разной толщины и главное LineWidth гарантированно поддерживает только 1, ну в большинстве случаев 1 <= x <= 10, но даже так с не целыми будет убого.
Собственно я чего старые ссылки начал смотреть, сегодня про это вспоминал и вот решил убедится что не наврал нигде.
Вообще меня привлекает идея рисовать gl_lines, а потом в геометрическом шейдере превращать их в триангл стрипы, но я не попробовал так, с не которым шансом это довольно убого будет, в skia path renderer несколько похожий подход, правда они тессилируют (писал про это выше немного) путь в набор треугольников, ну там сложнее потому что рассчитано и на кривые безье например плюс у них довольно высокие требования по гладкости получаемых линий (по крайне мере в пейперах, ну и выглядит красиво)
Вообще вопрос известный, например есть глава в гемсах древних на тему:
https://developer.nvidia.com/gpugems/gpugems2/part-iii-high-quality-rendering/chapter-22-fast-prefiltered-lines
Хотя сейчас не советую рисовать линии как gl_lines так как нельзя за один вызов отрисовать линии разной толщины и главное LineWidth гарантированно поддерживает только 1, ну в большинстве случаев 1 <= x <= 10, но даже так с не целыми будет убого.
Собственно я чего старые ссылки начал смотреть, сегодня про это вспоминал и вот решил убедится что не наврал нигде.
Вообще меня привлекает идея рисовать gl_lines, а потом в геометрическом шейдере превращать их в триангл стрипы, но я не попробовал так, с не которым шансом это довольно убого будет, в skia path renderer несколько похожий подход, правда они тессилируют (писал про это выше немного) путь в набор треугольников, ну там сложнее потому что рассчитано и на кривые безье например плюс у них довольно высокие требования по гладкости получаемых линий (по крайне мере в пейперах, ну и выглядит красиво)
Imaginationtech
Introducing GRLAA: a new technique for anti-aliasing in navigation applications - Imagination
This post introduces GRLAA (GRadient Line Anti-Aliasing), a simple and efficient method designed to cope with aliased lines in automotive navigation apps.
https://www.tgoop.com/korovany/911 тут про пиратство, но мне вот другое любопытно, как вы относитесь к пиратству книжек?
Поясню, в целом мне кажется я бы вполне мог покупать те книги, которые прочитал целиком. Но слишком сложно заставить себя тратить деньги, когда я с таким же удобством могу скачать pdf бесплатно.
Например я покупаю игры в стиме не потому что я какой-то очень порядочный, а скорее потому что мне удобно иметь библиотеку в одном месте, легко запускать и устанавливать, нет необходимости как правило лазать по раздачам, есть скидки, ну и приятно что купил, а не спиратил, с книгами же только один пункт, ещё и стоят обычно дофига(
И в целом я к чему веду, почему для книг не придумали чего-то что дало мне больше чем просто нужная пдфка? Или придумали но я не в курсе?
Вообще речь шла скорее про техническую литературу, но отчасти можно наверно и не только про нее так написать, просто ее я почти не читаю
Поясню, в целом мне кажется я бы вполне мог покупать те книги, которые прочитал целиком. Но слишком сложно заставить себя тратить деньги, когда я с таким же удобством могу скачать pdf бесплатно.
Например я покупаю игры в стиме не потому что я какой-то очень порядочный, а скорее потому что мне удобно иметь библиотеку в одном месте, легко запускать и устанавливать, нет необходимости как правило лазать по раздачам, есть скидки, ну и приятно что купил, а не спиратил, с книгами же только один пункт, ещё и стоят обычно дофига(
И в целом я к чему веду, почему для книг не придумали чего-то что дало мне больше чем просто нужная пдфка? Или придумали но я не в курсе?
Вообще речь шла скорее про техническую литературу, но отчасти можно наверно и не только про нее так написать, просто ее я почти не читаю
Telegram
Геймдев, который мы заслужили
Интернет вчера обнаружил, что у многих игровых журналистов вместо мозгов появляется песок, когда дело заходит об обсуждении пиратства. Особо отличился Зуев, но умных мыслей за десять лет от этого человека можно пересчитать по пальцам. Интересно еще и то,…
https://www.tgoop.com/compscicenter_ru/186
Ну в общем рекомендую, тем кто в питере/новосибе, если надо могу что-то рассказать про учебу етс
Ну в общем рекомендую, тем кто в питере/новосибе, если надо могу что-то рассказать про учебу етс
Telegram
Computer Science Center
Приходите учиться в Computer Science Center.
Мы предлагаем вечерние курсы по математике и программированию. Занятия проходят в Санкт-Петербурге и в Новосибирске. Жители других городов могут поступить на обучение в удалённом формате.
Чтобы поступить
— заполните…
Мы предлагаем вечерние курсы по математике и программированию. Занятия проходят в Санкт-Петербурге и в Новосибирске. Жители других городов могут поступить на обучение в удалённом формате.
Чтобы поступить
— заполните…
В общем я тут побывал на собесах, что спрашивали: много всего про плюсы, найти среднее на slice window, бинпоиск, про вертикальную ось симметрии на Z^2, была задача на дизайн сервиса для подсказок пользователю текста на основе уже введённой строки и баунд бокса экрана и возможно позиции пользователя, ещё было на дизайн сервиса для ci, который запускает бенчмарки на девайсах и выдает статистику.
В собесе про рендер в основном говорили про то что делал я, да и в целом кажется довольно много рассказывал про то что делал.
В общем ничего страшного зря повторял математику и нетривиальные алгоритмы.
Получил оффер от мейла, нужно будет писать рендер тайловых карт, в общем попозже напишу немного и про это и про свою работу wartsila
В собесе про рендер в основном говорили про то что делал я, да и в целом кажется довольно много рассказывал про то что делал.
В общем ничего страшного зря повторял математику и нетривиальные алгоритмы.
Получил оффер от мейла, нужно будет писать рендер тайловых карт, в общем попозже напишу немного и про это и про свою работу wartsila
https://github.com/alex/what-happens-when в одном месте кинули ссылку, я ожидал что будет любопытно, но мне не понравилось. https://github.com/vasanthk/how-web-works а вот это прочитать было интереснее, хоть и видно что это частично копипаста