Здравствуйте, CreatorCray, Вы писали:
N>>Я про gmp уже упоминал. mpn/x86_64/gmp_mparam.h :
N>>N>>#define GMP_LIMB_BITS 64
N>>#define MUL_TOOM22_THRESHOLD 27
N>>
N>>27*64 == 1728
CC>А как давно эта строка менялась?
Репа публичная, hg log напустить ты очевидно в состоянии.
https://gmplib.org/repo/gmp/
CC> Ибо с развитием железа скорость выполнения алгоритмов от обрабатываемого объёма данных весьма даже плавает.
Конкретно этот файл — общий для x86-64 всего целиком — менялся в 2011.
Но там есть ещё по каждой ходовой архитектуре свой файлик.
Например, самая последняя добавка mpn/x86_64/alderlake/gmp-mparam.h, там 13 (то есть 832 бита).
Перед этим zen3, там 20 (1280 бит).
Перед этим bd2, там 16 (1024 бита).
Перед этим bt1, там 24 (1536 бит).
У skylake почему-то 26, хотя не древность. У zen3 больше чем у bd2, хотя она на десяток лет новее. Стабильности не наблюдается.
Согласен, методически более верно было бы взять среднее между относительно последними Intel и AMD.