Sergei Kushnirenko @dalerank
Люблю (ш)кодить, алгоритмы и старые авто.
Information
- Rating
- 3,116-th
- Location
- Москва и Московская обл., Россия
- Date of birth
- Registered
- Activity
Specialization
Software Developer, Game Developer
Senior
From 300,000 ₽
Git
C++
Multiple thread
Applied math
OOP
Извините но нет, после того как мне пришлось объяснять своему 30-летнему лиду плюсовое правило 0-3-5 и почему виртуальная функция сломает деструктор в его комите, я буду спрашивать эти глупые вещи на собеседовании, хотя бы для того чтобы понять что кандидат в теме.
Через три года никто не смотрит на ваш диплом, будь он хоть золотой в крапинку, а связи они нарабатываются в офисе, в жизни, в комьюнити, на гитхабе. Универ положит (положит ли?) какие-то знания в голову, проблема в том что реальные проекты редко решаются только теми знаниями что у вас в голове после универа
Да, вот тоже возник этот вопрос. В разработке с 2001 года, был и техлидом и тимлидом и техдиром, и для себя понял что тимлид - это единственный человек в команде, который не знает как работает текущая система :) А если серьёзно, то без пары "заваленных" проектов с горящими сроками, уходов людей, срочным затыканием фичей джунами, кранчами и руганью с СТО лычка тимлида ненастоящая, ибо нет опыта управления в кризис, и научить этому никто не сможет
80к+, студия открывается несколько минут, все лишнее убрано в проекты и отключено
Я бы сказал, что 10к это совсем немного. Рабочий проект, две трети ресурсы, остальное исходники. Cursor пробовали прикрутить, баловство это всё, извините.
Это приведёт к выбору решения, которое адаптировано под конкретный проект.
Совершенно верно, сначала профайлер потом улучшения, если у вас "потерялся" мьютекс в горячей функции никакими хаками вы это не исправите. А вот если вы залезли по локоть в профайлер и оптимизируете например A*, то смысл соблюдать правила?
Оно и уменьшается, но на определенных размерах и условиях, и происходит это большей частью из-за того, что данные для работы почти всегда находится в кеше и не надо идти в ram, минус время на алокации (вот тут если интересно подробнее). И как вы правильно подметили, сначала профайлер, потом изменения
Так pmr это всё те же контейнеры, у них только аллокаторы другие используются. При желании вы и flat_map можете сделать pmr, там перф подрастает по другой причине
Не уверен что это хороший совет, у компилятора гораздо больше контекста для анализа. И связи он видит намного лучше человека, и порою очень неочевидные, не всегда конечно, иногда надо помогать да.
Да, у вас просто есть набор байт, и каждое здание мапило свои данные на это блок. Такой вот std::variant получился
обычно компиляторы про это знают, называется strength reduction и делают там где получается.
Вам чуть ниже уже написали про достаточно длинные ответы, которые не всегда соотносятся с темой статьи. Попробуйте собрать Ваши мысли в формат статьи, что-ли. А то получается, что вы сами себе отвечаете. Тем более 3д графика, там много своих нюансов, которые не бьются с обычным программированием, пытаться здесь искать параллели - ну они конечно будут, но различий намного больше будет. Кстати хорошая тема, я бы почитал.
Нет там честной баллистики для пуль, посмотрите исходники x-ray. Это движок сталкера и метрошный, сделано через проджектайлы
У вас хороший слог, почему не писать на хабре (только без капса плиз) ? Я бы почитал с удовольствием. З.ы. Ссылка выдаёт 403.
код не вижу, картинка очень мутная, но разница в скорости в 10х очень подозрительная, даже в 3х подозрительная, всё правильно сделали?
вы наверное не очень в курсе апдейтов сдк на препроде, как минимум продюсеры не дадут ничего менять ибо риск сломать то что работает, апдейт сдк, либ и всякие новшества точно фризят за год а то и больше до релиза, если там конечно не супер прирост обещают.
Про этот кейс я написал, что зависит от настроек и компилятора. На плоечном сдк самый свежий 16 кланг и хреновая поддержка 20 стандарта, 17 кланг завезут хорошо если через год, а то и два, судя по темпам адаптации компилятора под вендора. У меня сейчас вот как-то так, и будет так минимум еще год, потому что уже зафризили версию сдк на препроде. Что там внутри компилятора творится и как это поправить в сдк никто разбираться не будет
https://quick-bench.com/q/M1q0ipx9v9wFlnCYMbgy0JuhP9w
Скрытый текст
А с сумматор-компенсатором точности по Kahan не сталкивались?
Да, все как вы говорите, но открываешь рабочий проект, а там вектора... никто даже не смотрит в сторону std::array, pmr, boost::small_array.