Ответ 1
Вы должны использовать формулу Формула Бейли-Борвейн-Плуффе
Почему? Прежде всего, вам нужен алгоритм, который можно разбить. Итак, первое, что пришло мне в голову, - это представление pi как бесконечной суммы. Затем каждый процессор просто вычисляет один член, и вы суммируете их все в конце.
Затем желательно, чтобы каждый процессор манипулировал значениями малой точности, а не очень высокоточными. Например, если вы хотите один миллиард десятичных знаков, и вы используете некоторые из выражений, используемых здесь, например Чудновский алгоритм, каждый из ваших процессоров должен будет манипулировать миллиардным длинным номером. Это просто не соответствующий метод для графического процессора.
Итак, в целом формула BBP позволит вам вычислять цифры pi отдельно (алгоритм очень крут) и с процессорами с низкой точностью! Прочитайте "BB-разрядный алгоритм извлечения для π"
Преимущества алгоритма BBP для вычисления π Этот алгоритм вычисляет π , не требуя специальных типов данных, имеющих тысячи или даже миллионы цифр. Метод вычисляет n-ю цифру без вычисления первых n-1 цифр и может использовать небольшие эффективные типы данных. Алгоритм является самым быстрым способом вычисления n-й цифры (или нескольких цифр в окрестности n-го), но π-вычислительные алгоритмы с использованием больших типов данных остаются более быстрыми, когда целью является вычисление всех цифр от 1 до n.