Size: a a a

2020 March 29

m

magras in pro.cxx
Denis Kormalev
Вот мне и было интересно почему для вектора все работает ок, а для деки нет (для листа еще понятно, там нечего мувать особо).
Понятно что нрво тут ни при чем, я про него и не говорил
У меня размер вектора 24 байта. Размер дека 80. Я не говорю, что вермя мува пропорционально размеру объекта, но дек заметно сложнее вектора.
источник

m

magras in pro.cxx
Хотя и мув и своп в деке просто копируют все поля. Так что выходит, что действительно пропорционален объему.

Но чтобы сделать хоть сколь-нибудь обоснованный вывод, нужно профилировать и смотреть что именно делает код. Кроме того, то что иногда код без мува оказывается заметно медленее наводит на мысли, что в самом бенче есть проблемы. По-моему на cppcon был интересный доклад посвященный эффектам влияющим на результаты микробенчмарков.
источник

DK

Denis Kormalev in pro.cxx
magras
Хотя и мув и своп в деке просто копируют все поля. Так что выходит, что действительно пропорционален объему.

Но чтобы сделать хоть сколь-нибудь обоснованный вывод, нужно профилировать и смотреть что именно делает код. Кроме того, то что иногда код без мува оказывается заметно медленее наводит на мысли, что в самом бенче есть проблемы. По-моему на cppcon был интересный доклад посвященный эффектам влияющим на результаты микробенчмарков.
Проблемы называются оптимизация процессора, о чем я выше и написал
источник

m

magras in pro.cxx
Denis Kormalev
Проблемы называются оптимизация процессора, о чем я выше и написал
И как оптимизации могли сделать код работющий с неподвижным объектом быстрее мувов?
источник

DK

Denis Kormalev in pro.cxx
magras
И как оптимизации могли сделать код работющий с неподвижным объектом быстрее мувов?
без понятия, да мне в целом и неинтересно было. Меня беспокоил только вопрос про деку и ее мув
источник

m

magras in pro.cxx
magras
И как оптимизации могли сделать код работющий с неподвижным объектом быстрее мувов?
В смысле наоборот. Код с мувами быстрее неподвижного объекта.
источник

DK

Denis Kormalev in pro.cxx
я понял, да
источник

ПК

Побитый Кирпич in pro.cxx
magras
Хотя и мув и своп в деке просто копируют все поля. Так что выходит, что действительно пропорционален объему.

Но чтобы сделать хоть сколь-нибудь обоснованный вывод, нужно профилировать и смотреть что именно делает код. Кроме того, то что иногда код без мува оказывается заметно медленее наводит на мысли, что в самом бенче есть проблемы. По-моему на cppcon был интересный доклад посвященный эффектам влияющим на результаты микробенчмарков.
У тебя в коде миллионы деков, что их мув роляет?
источник

m

magras in pro.cxx
Побитый Кирпич
У тебя в коде миллионы деков, что их мув роляет?
Нет, один. Но мувается на каждом шаге цикла. Ссылку на код можно найти по цепочке реплаев.
источник

IS

Iskander Saitbatalov in pro.cxx
У меня есть подозрение, что это задача не уровня pro.cxx чатика, тебе нужно в @supapro.cxx
источник
2020 March 30

AZ

Alexander Zaitsev in pro.cxx
источник

ПК

Побитый Кирпич in pro.cxx
Валидно ли в llvm собирать отдельные TU с одними санитайзерами (address,fuzzer), а другие TU с другими санитайзерами (address, fuzzer,undefined)?
источник

AZ

Alexander Zaitsev in pro.cxx
Напоминаю, что картинки здесь запрещены
источник

Е

Егор in pro.cxx
Alexander Zaitsev
Напоминаю, что картинки здесь запрещены
Почему бы их не отключить в настройках группы?
источник

ДЛ

Дмитрий ⬡ Лапшин in pro.cxx
/report
источник

H

Hudd in pro.cxx
почему меня выкинуло?
источник

AZ

Alexander Zaitsev in pro.cxx
Hudd
почему меня выкинуло?
Всякое бывает :)
источник

AS

Anatoly Shirokov in pro.cxx
Hudd
почему меня выкинуло?
Фигня случается
источник

AT

Anatoly Tomilov in pro.cxx
Побитый Кирпич
Валидно ли в llvm собирать отдельные TU с одними санитайзерами (address,fuzzer), а другие TU с другими санитайзерами (address, fuzzer,undefined)?
Кажется надо как-то умудриться указать и компилятору разные санитайзеры и линкеру все:
Simply compile and link your program with -fsanitize=address flag. The AddressSanitizer run-time library should be linked to the final executable, so make sure to use clang (not ld) for the final link step. When linking shared libraries, the AddressSanitizer run-time is not linked, so -Wl,-z,defs may cause link errors (don’t use it with AddressSanitizer).
источник

A

ARCHANGEL in pro.cxx
парни, если у меня в анонимном неймспейсе есть метод, который нужно покрыть юниттестами, какой правильный подход выбрать, чтоб до него добраться?
источник