Цитата (c00l0ne @ 3.2.2019)
а что с ним не так ?
Не в к-ве ядер дело. Судя по его производительности ядра там средненькие. Современные суперкомпьютеры, это что-то с производительностью от петафлопсов) А это так - забавка детская с теоретическими 66 тфлопсами (а реально там и того ниже будет).
Цитата (diklee @ 3.2.2019)
расскажи лучше, как ускорить код с помощью битовых операций чуть поподробней
Ну это много текста писать) Я вкратце написал, как представить ранги. Также всю колоду/позицию можно представить 1-м 64-битным числом. Соответственно все проверки на комбинации можно сделать при помощи быстрых побитовых операций, дополнительно ускорив все это предрассчитаными таблицами. Ну например, как быстро посчитать есть ли стрит в какой-то позиции? Выделяем из позиции все ранги карт (первых 16 бит - скажем
или (логическое) второе двойное слово (
) или третье двойное слово (
) или четвертое -
). Все, ранги есть, в виде 16-битного числа. Считаем это индексом в предрассчитаной таблице стритов и ... вуаля. Вместо минут рассчетов (как ТС писал на данный момент) будут максимум секунды. Если станет дело в скорости я подскажу в деталях как все оптимизировать для скорости.
Буду благодарен за ссылку на подробные правила разновидности игры, которую вы обсуждаете, я что-то заинтересовался. Люблю алгоритмы и все с ними связанное)
Есть задачи, для решния которых с адекватной точностью нужны огромные вычислительные мощности. И алгоритмы там точно не кривые.
Вообще-то потеря не гипотетическая, а вполне реальная. И поверь - очень существенная: попробуй посчитать еквити руки в обычном техасском холдеме по своему способу со строками и ты будешь сильно удивлен сколько времени у тебя займет рассчет.
Если ты имеешь ввиду реальный суперкомпьютер, то максимум за такие деньги ты сможешь арендовать его на час (или на несколько, смотря от мощности). Если имелась ввиду аренда сервера, то за такие деньги его можно просто купить, а не арендовать, но и мощности там гораздо ниже.