Size: a a a

2020 May 20

AZ

Alexander Zaitsev in pro.cxx
Alexander Malkov
т. е. нет никаких гарантий, что запустив 4 потока на 4х ядрах, они будут выполняться одновременно, соответственно, истинная многопоточность возможна только в системах реального времени?
ответ очень простой - смотрите гарантии, которые дают потоки на вашей ОС
источник

DF

Dollar Føølish in pro.cxx
Не считая Вирт памяти
источник

K

Konstantin in pro.cxx
Dollar Føølish
Просто часто говорят про какие то гигабайты под стеки потоков
На деле их нет, всё в порядке
источник

AZ

Alexander Zaitsev in pro.cxx
так как std::thread мапится на ОСные потоки. все гарантии касательно истинности, не прыганья по разным ядрам и так далее - только в доке к ОС
источник

PK

Pavel Kazakov in pro.cxx
Alexander Malkov
т. е. нет никаких гарантий, что запустив 4 потока на 4х ядрах, они будут выполняться одновременно, соответственно, истинная многопоточность возможна только в системах реального времени?
еще и офигенно сложно привязать конкретный тред к конкретному ядру, чтобы им не жонглировали, когда он не хочет)
источник

PK

Pavel Kazakov in pro.cxx
Dollar Føølish
Просто часто говорят про какие то гигабайты под стеки потоков
на заборе тоже пишут :) надо поточнее записывать за такими заборами
источник

DF

Dollar Føølish in pro.cxx
Ну и почему вы тогда говорите про 4мб?
источник

DF

Dollar Føølish in pro.cxx
Не из этих соображений?
источник

PK

Pavel Kazakov in pro.cxx
это дефолтный размер стека: 1-4 МБ, и всё
источник

PK

Pavel Kazakov in pro.cxx
конкретные имплементации тредпулов и всего прочего — другое дело, — они потребляют столько памяти, сколько автор тредпула считает нужным для этой задачи
источник

I

Ioann_V in pro.cxx
Konstantin
На деле их нет, всё в порядке
Их нету не потому что, они не коммитятся, а потому что, система выделяет памяти, и далее в процессе суспенда нитей, может в целом отдавать или загружать, стековую память того или инного потока. Но вообще, как бы, по 4кб на поток, не дадут гигагайтов если потоков 2к.
источник

MP

Mr. Panisher in pro.cxx
https://ideone.com/a9De48
Вот для примера, как можно еще ускорить перебор в цикле? Или подскажите куда капать, чтобы преодолеть грань 1583.
источник

IA

Igor Akhmetov in pro.cxx
Mr. Panisher
https://ideone.com/a9De48
Вот для примера, как можно еще ускорить перебор в цикле? Или подскажите куда капать, чтобы преодолеть грань 1583.
Несколько раз уже написали, от увеличения num_threads быстрее не станет, это число должно быть недалеко от количества ядер. Если оно сильно больше вы наоборот все замедляете.
источник

AM

Alexander Malkov in pro.cxx
Возвращаясь к вопросу кодогенерации, а что если сделать отдельное описание структуры, на основе которой потом автоматически генерировать код, вместе с кодом struct/class, как, например, это делает протобуфф, возникает следующая проблема, если необходимо иметь кастомные методы и поля в модели, то каждый раз их придётся вставлять заново,или наследоваться от этих структур, что неудобно.. а что если генерировать не сами классы и структуры, а traits для них, таким образом у нас будет нужный функционал и возможность полностью управлять классом?)
источник

K

Konstantin in pro.cxx
traits для проверки? А чем неудобно наследоваться?
источник

AM

Alexander Malkov in pro.cxx
Konstantin
traits для проверки? А чем неудобно наследоваться?
Traits для расширения
источник

K

Konstantin in pro.cxx
Alexander Malkov
Traits для расширения
а как это?
источник

PK

Pavel Kazakov in pro.cxx
Alexander Malkov
Возвращаясь к вопросу кодогенерации, а что если сделать отдельное описание структуры, на основе которой потом автоматически генерировать код, вместе с кодом struct/class, как, например, это делает протобуфф, возникает следующая проблема, если необходимо иметь кастомные методы и поля в модели, то каждый раз их придётся вставлять заново,или наследоваться от этих структур, что неудобно.. а что если генерировать не сами классы и структуры, а traits для них, таким образом у нас будет нужный функционал и возможность полностью управлять классом?)
Protoprotobuf? :)
источник

r

rfulgio in pro.cxx
Здравствуйте, кто подскажет как лучше перевести строку string в тип usingned long?
источник

v

vehlwn in pro.cxx
rfulgio
Здравствуйте, кто подскажет как лучше перевести строку string в тип usingned long?
std::from_chars
источник