Size: a a a

2021 April 18

VM

Vladimir Murashkin in pro.net
Думаю ты не то что-то меряешь.
Blocking collection по дефолту под капотом держит ту же ConcurrentQueue. Оверхед, который у тебя получается, наверняка от необходимых для юзкейса блокировок по пустой/полной коллекции.

Если хочешь потестить свой буфер, то реализуй на нем IProducerConsumerCollection<T> и передай в BlockingCollection его вместо ConcurrentQueue.
источник

RB

Roman Bukin in pro.net
AVX/AVX2 - 256 бит вектор => 32 байта
источник

S

SeanWoo in pro.net
не вижу ничего абстрактного
источник

S

SeanWoo in pro.net
спасибо
источник

Н

Николай in pro.net
Нет, там внутри ещё дополнительно блокировки осуществляются. И мне не понятно для чего, если очередь и так потокобезопасная. Пока что просто реализовал через ConcurrrentQueue, и вместо потока сделал timer, который выводит в консоль, сейчас не дома, завтра скину результаты trace, станет понятно. Пользуюсь так, если багов не выявится, попробую PR сделать
источник

RB

Roman Bukin in pro.net
Там кстати с ним приколы есть
источник

RB

Roman Bukin in pro.net
Пушо на той же рязани 1xxx - 3xxx, 256 векторов нет
источник

RB

Roman Bukin in pro.net
Ну как нет
источник

RB

Roman Bukin in pro.net
Софтварно то они есть
источник

RB

Roman Bukin in pro.net
Но в железе там 128
источник

RB

Roman Bukin in pro.net
Поэтому инструкции типа эмулируются
источник

RB

Roman Bukin in pro.net
От того просадка местами
источник

RB

Roman Bukin in pro.net
Вот тут много интересного есть на эту тему https://www.agner.org/optimize/blog/read.php?i=838
источник

RS

Rustam Sayfutdinov in pro.net
Кек, а в 4 уже православные?
источник

RB

Roman Bukin in pro.net
4xxx не было
источник

RB

Roman Bukin in pro.net
Ну было
источник

RB

Roman Bukin in pro.net
Но не в десктопе
источник

RB

Roman Bukin in pro.net
В десктопе сразу 5xxx
источник

RB

Roman Bukin in pro.net
И да, они уже православные
источник

RS

Rustam Sayfutdinov in pro.net
Ок, спасибо
источник