PrimeGrid PRPNet
PRPNet — складова частина проекту добровільних розподілених обчислень PrimeGrid. Платформу PRPNet було розроблено Марком Роденкірхом (англ. Mark Rodenkirch), PRPNet дуже подібний до BOINC, але використовується тільки для пошуку простих чисел. PRPNet не має інтерфейсної оболонки. Натомість він стартує або в DOS вікні (Windows) або в командному терміналі (Linux). Все досить просто — скачай, розпакуй файл для твоєї ОС, відредагуй декілька рядків у файлі prpclient.ini і запускай.
Зміст
- 1 Інструкція з інсталяції PRPNet
- 2 Інструкція до запуску PRPNet
- 3 Активні підпроекти PRPNet
- 4 27121 Prime Search
- 5 Factorial Prime Search
- 6 Primorial Prime Search
- 7 Wieferich Prime Search
- 8 Wall-Sun-Sun Prime Search
- 9 Завершені / призупинені підпроекти
- 10 dual Sierpinski Problem
- 11 Примітки
- 12 Джерела
Інструкція з інсталяції PRPNet[ред. | ред. код]
Доступні збірки для Linux, MacIntel, MacPPC і Windows. Збірка містить інсталяції для одного, двох, чотирьох, шости, восьми, дванадцяти і шістнадцяти ядер. Інсталяційні пакети доступні за адресою: http://uwin.mine.nu/PRPNet/
Поточні пакети:
- windows (32 біта — працює і на 64 бітній ОС)
- linux_32
- linux_64
- macintel
Програми, що входять до складу пакету:
application | ![]() |
![]() |
![]() | ||
---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() | |
prpclient | ![]() |
![]() |
![]() |
![]() |
![]() |
llr | ![]() |
![]() |
![]() |
![]() |
![]() |
llr64 | ![]() |
![]() |
![]() |
![]() |
![]() |
pfgw32 | ![]() |
![]() |
![]() |
![]() |
![]() |
pfgw64 | ![]() |
![]() |
![]() |
![]() |
![]() |
phrot | ![]() |
![]() |
![]() |
![]() |
![]() |
wwww | ![]() |
![]() |
![]() |
![]() |
![]() |
wwwwcl | ![]() |
![]() |
![]() |
![]() |
![]() |
wwwwcl64 | ![]() |
![]() |
![]() |
![]() |
![]() |
Інструкція до запуску PRPNet[ред. | ред. код]
- Завантажте клієнта для своєї ОС та розпакуйте. Інсталяційні пакети Ви можете завантажити звідси: http://uwin.mine.nu/PRPNet/
- Запустіть «#-install-prpclient.bat» («#-install-prpclient.sh» для Linux), щоб створити таці
- 1-single install
- 2-dual install
- 4-quad install
- 6-hex install
- 8-oct install
- 12-dodeca install
- 16-hexa install
- Відкрийте на редагування master_prpclient.ini і встановіть наступні налаштування:
- email= Це обов'язковий параметр. Введіть свій email. E-mail будуть відправлятися на цю адресу, коли, наприклад, Вами буде знайдено просте число. Якщо хочете, щоб очки за участь в PRPNet йшли у залік облікового запису PrimeGrid та знайдені прості було приєднано до бази даних простих PrimeGrid (прості числа, що показуються на сторінці http://www.primegrid.com/primes/?section=primelist&userid=<userid>), де замість <userid> — Ваш реєстраційний номер в проекті PrimeGrid), будь ласка використовуйте ту саму email адресу, з якою Ви зареєстровані у PrimeGrid.
- userid= Це обов'язковий параметр. Введіть ваш нікнейм з проекту PrimeGrid. Це ім'я буде використовуватись сервером для звіту у статистиці і для нарахування кредитів. Примітка: Якщо Ваш нікнейм у PrimeGrid містить пробіли, замініть їх на знак підкреслення _. Наприклад: «Prime Time» перетвориться на «Prime_Time».
- machineid= Цей параметр є специфічним для клієнта. Дозволяє розрізнити різні комп'ютери, що використовуються під Вашим userid. НЕ ВИКОРИСТОВУЙТЕ пробіли. Замініть їх на знаки підкреслення: _.
- instanceid= Цей параметр є необов'язковим, дозволяє дати різним інстансам однієї машини власні імена. Якщо Ви віддаєте перевагу ручному оновленню таць, дайте будь ласка унікальні ідентифікатори інстансам, наприклад 1,2,3,4…
- teamid= Цей параметр дозволяє долучити здобутки Вашого клієнта до певної команди. НЕ ВИКОРИСТОВУЙТЕ пробіли. Замініть їх на знаки підкреслення: _.
- server= Цей параметр вказує серверу PRPNet, звідки клієнт буде отримувати завдання. Цей параметр за змовчанням містить певні адреси. Відредагуйте цей перелік згідно із своїми уподобаннями.
Збережіть файл master_prpclient.ini
- Запустіть «#-update-prpclient-ini.bat» («#-update-prpclient-ini.sh» для Linux) для оновлення файлів prpclient.ini у кожній із таць. Користувачі Mac мають також перевірити, що вони обрали коректний виконавчий файл.
- Запустіть «#-start-prpclient.bat» («#-start-prpclient.sh» для Linux) для старту всіх клієнтів (вікна відкриються згорнутими). Клієнти стартують, під'єднуються до сервера, завантажують завдання згідно із налаштуваннями в файлі master_prpclient.ini
- Клієнт автоматично обирає яку програму для тестування необхідно використовувати (LLR, Phrot, PFGW, Genefer або WWWW) для отриманого завдання. Завдання виконуються аж доки не буде перервано.
- Щоб зупинити клієнта, запустіть «stop-prpclient.sh» (.command для Mac). Ця команда завершить всі процеси. В Windows натисніть Ctrl+C у всіх відкритих DOS вікнах. Клієнта буде зупинено згідно з опцією stopoption= . Також, оскільки .ini файл може бути змінено, поки клієнт виконується, опція stopasapoption може бути використана для зупинки клієнта.
Додаткова інформація
Налаштування і розбір секції server відбувається наступним чином: server=<suffix>:<pct>:<workunits>:<server IP>:<port>
- <suffix> — унікальний суфікс серверу. Він використовується, щоб розрізняти імена файлів, що створені для кожного налаштованого серверу.
- <pct> — визначає скільки у відсотках від загальної кількості завдань буде отримано від цього сервера.
- <workunits> — бажана кількість завдань, що буде отримано від сервера одночасно за один запит. Кожен сервер також має ліміт завдань, тому сервер ніколи не поверне завдань більше за його ліміт.
- <server IP> — IP адреса або ім'я сервера
- <port> — порт PRPNet сервера
Встановлення pct в 0 означає, що клієнт отримуватиме завдання з сервера тільки якщо не може під'єднатися до жодного іншого налаштованого сервера з pct > 0.
Приклад налаштувань:
- server=GFN65536:0:1:prpnet.primegrid.com:12003
- server=PPSElow:100:5:pgllr.mine.nu:12000
- server=SGS:0:1:prpnet.primegrid.com:12000
Це налаштування каже клієнту отримувати завдання для PPSElow порт 12000 з сервера pgllr.mine.nu (по 5 завдань за раз), а у випадку недоступності сервера — GFN65536 або SGS від інших двох серверів.
Ви можете перерозподілити відсотки між проектами у будь-якій пропорції. Наприклад:
- server=SGS:50:1:prpnet.primegrid.com:12000
- server=121:25:1:prpnet.primegrid.com:12001
- server=FPS:25:1:prpnet.primegrid.com:12002
За наведеними вище налаштуваннями клієнт отримуватиме по 1 завданню за раз від одного із серверів. Зверніть увагу, що завдань від SGS буде отримано вдвічі більше, ніж для інших проектів, адже для SGS вказаний вдвічі більший відсоток аніж у інших двох: 50 проти 25.
Ви можете обрати будь-яку комбінацію, яку забажаєте, клієнт сам коректно визначить відсотки. :)
Примітка: Встановлення відсотка в 0 означає, що клієнт отримуватиме завдання з сервера тільки якщо не може під'єднатися до жодного іншого сервера. Натомість, якщо Ви зовсім не бажаєте отримувати завдань від певного сервера, закоментуйте цей сервер за допомогою символів «//» на початку рядка або встановіть <pct> і < workunits> в 0:0. Наприклад:
- server=SGS:0:0:prpnet.primegrid.com:12000
Відкоригуйте відсотки для серверів, що залишаться.
Завершення черги і зупинка клієнта.
Опція STOPoptions в файлі master_prpclient.ini використовується для того, щоб сказати PRPClient, що робити, коли натиснено Ctrl-C. Значення 2, 5, 6 та 7 спорожнять чергу. Наступні опції доступні:
- 2 — Повернути завершені завдання, відмінити решту і завершити роботу
- 3 — Повернути завершені завдання, решту залишити на потім і завершити роботу
- 5 — Завершити завдання, що виконуються, відмінити решту і завершити роботу
- 6 — Завершити всі завдання, повернути їх всі, а потім завершити роботу
- 7 — Завершити всі завдання і завершити роботу (без повернення завершених завдань)
- 9 — Нічого не робити і завершити роботи (передбачається, що з опцією startoption=9 завдання будуть перестартовані наступного разу)
Файл master_prpclient ini може бути оновлено без зупинки клієнта. Отже, підготуйте зміни у цьому файлі і запустіть #-update-prpclient-ini.sh" (.bat для Windows) (.command для Mac) для оновлення файлів prpclient.ini в всіх тацях. Коли буде натиснено Ctrl-C, клієнт прочитає нові значення опції stopoptions.
Також доступна опція stopASAPoption. Ви можете використовувати її, щоб завершити клієнта одразу після завершення поточного завдання. Наступні опції доступні:
- 2 — Повернути завершені завдання, відмінити решту
- 3 — Повернути завершені завдання, решту залишити на потім
- 6 — Завершити всі завдання, повернути їх всі
- 7 — Завершити всі завдання і завершити роботу (без повернення завершених завдань)
Підготуйте зміни у цьому файлі і запустіть #-update-prpclient-ini.sh" (.bat для Windows) (.command для Mac) для оновлення файлів prpclient.ini в всіх тацях. Коли поточне завдання буде завершено, клієнт прочитає нові значення опції stopASAPoptions.
Активні підпроекти PRPNet[ред. | ред. код]
- 121 Prime Search
- server=121:0:1:prpnet.primegrid.com:12001
- 27 Prime Search
- server=27:0:1:prpnet.primegrid.com:12006
- Factorial Prime Search
- server=FPS:0:1:prpnet.primegrid.com:12002
- Primorial Prime Search
- server=PRS:0:1:prpnet.primegrid.com:12008
27121 Prime Search[ред. | ред. код]
PrimeGrid і проект 12121 Search співпрацюють у спільному докладанні зусиль задля пошуку Мега Простих виду 121·2n−1. Цей проект подібний до проекту 321 Prime Search, що веде пошук для k=3.
12121 Search було розпочато 24 травня 2004 року задля пошуку великих простих виду 121·2n−1. Пізніше до пошуку було долучено також k=27. Короткостроковою метою PrimeGrid було перевірити всіх кандидатів для n аж до 10M.
Так само як було вчинено з підпроектом 321 Prime Search, до пошуку у підпроекті було долучено також форми +1 для усіх цих k. Таким чином зусилля підпроекту спрямовано на пошук простих виду:
- 121·2n+1
- 121·2n−1
- 27·2n+1
- 27·2n−1
для n<10M
Результати проекту[ред. | ред. код]
Прості, що було знайдено підпроектом (станом на 11 жовтня 2018 року):
Просте число | Цифр | Дата | Автор |
---|---|---|---|
27·23855094−1 | 1 160 501 | 28.02.2012 | Pietari Snow |
121·24553899−1 | 1 370 863 | 25.02.2012 | Timothy D. Winslow |
27·24542344−1 | 1 367 384 | 18.07.2014 | Scott Brown |
27·24583717−1 | 1 379 838 | 22.08.2014 | Hans Joachim Böhm |
27·25213635+1 | 1 569 463 | 09.03.2015 | Hiroyuki Okazaki |
27·27046834+1 | 2 121 310 | 11.10.2018 | Andrew M. Farrow |
Factorial Prime Search[ред. | ред. код]
Факторіал цілого додатнього числа n (позначається n!) є добуток всіх цілих додатніх чисел від 1 до n. Наприклад:
5! = 1·2·3·4·5 = 120
Факторіальні прості — це прості виду n!±1.
Використовуючи наведений вище приклад, ми можемо перевірити, чи є числа 5!−1 і 5!+1 простими:
5! = 1·2·3·4·5 = 120
5!−1 = 119 — просте
5!+1 = 121 — складене
Таким чином 5!−1 є факторіальним простим.
Станом на 7 листопада 2013 року найбільшим відомим факторіальним числом є 150209!+1 з 712355 цифр, що було знайдено 31 жовтня 2011 року учасником René Dohmen.
n!+1 є простим для чисел n = 1, 2, 3, 11, 27, 37, 41, 73, 77, 116, 154, 320, 340, 399, 427, 872, 1477, 6380, 26951, 110059 (507082 цифр) та 150209 (712355 цифр).
n!−1 є простим для чисел n = 3, 4, 6, 7, 12, 14, 30, 32, 33, 38, 94, 166, 324, 379, 469, 546, 974, 1963, 3507, 3610, 6917, 21480, 34790, 94550, 103040 (471794 цифр) та 147855 (700176 цифр).
Результати проекту[ред. | ред. код]
Прості, що було знайдено підпроектом (станом на 30 серпня 2013 року):
Просте число | Цифр | Дата | Автор |
---|---|---|---|
94550!−1 | 429 390 | 04.10.2010 | Dmitry Domanov |
103040!−1 | 471 794 | 14.12.2010 | James Winskill |
110059!+1 | 507 082 | 14.06.2011 | Peter Doggart |
147855!−1 | 700 176 | 30.08.2013 | Pietari Snow |
Primorial Prime Search[ред. | ред. код]
Прайморіал або приморіал числа n позначається n# — добуток всіх простих чисел, що не перевищують n.
11# = 12# = 2·3·5·7·11 = 2310.
Прайморіал pn# позначають добуток перших n простих. Наприклад: p5# = 2·3·5·7·11 = 2310
Прайморіальні прості — це прості виду p#±1.
Використовуючи наведений вище приклад, ми можемо перевірити, чи є числа 11#+1 і 11#−1 простими:
11# = 12# = 2·3·5·7·11 = 2310.
11#+1 = 2311 — просте
11#−1 = 2309 — просте
Таким чином обидва числа 11#+1 та 11#−1 є прайморіальними простими.
Наразі станом на 7 листопада 2013 року найбільшим відомим праморіальним числом є 1098133#−1 з 476311 цифр, що було знайдено в PrimeGrid PRPNet 28 лютого 2012 року James P. Burt з Кайманових осторовів. 1098133#−1 = 2·3·5·7·…·1098101·1098109·1098121·1098133 − 1
p#+1 є простим для простих p = 2, 3, 5, 7, 11, 31, 379, 1019, 1021, 2657, 3229, 4547, 4787, 11549, 13649, 18523, 23801, 24029, 42209, 145823, 366439 і 392113 (169966 цифр).
p#−1 є простим для простих p = 3, 5, 11, 13, 41, 89, 317, 337, 991, 1873, 2053, 2377, 4093, 4297, 4583, 6569, 13033, 15877, 843301 і 1098133 (476311 цифр).
Результати проекту[ред. | ред. код]
Станом на 5 березня 2013 року:
Просте число | Цифр | Дата | Автор |
---|---|---|---|
843301#−1 | 365 851 | 20.12.2010 | Michał Gasewicz |
1098133#−1 | 476 310 | 05.03.2012 | James P. Burt |
Wieferich Prime Search[ред. | ред. код]
Просте p називається простим Віферіха, якщо p2 ділить 2p-1−1. Ці прості названі за ім'ям Артура Віферіха, німецького математика, який у 1909 році довів, що якщо перша частина останньої теореми Ферма не виконується для деякої експоненти p, тоді p задовільняє умові ap-1 = 1 (mod p2) для a=2.
Незважаючи на числені пошуки, донині відомо лише 2 простих числа Віферіха — це 1093 та 3511. Рідкісність таких простих веде до зацікавлення у пошуку «майже» простих Віферіха. Вони визначаються як спеціальні випадки для малих значень |A|.
Класичне означення близькості[ред. | ред. код]
Просте число p, що задовільняє рівнянню для малих значень |A|, назагал називається майже простим Віферіха.
Історія пошуку[ред. | ред. код]
Пошук простих і майже простих Віферіха триває вже більше 70 років. Ось історія прогресу:
Верхня межа | Автор | Дата |
---|---|---|
16000 | Beeger | 1940 |
50000 | Froberg | unknown |
100000 | Kravitz | 1960 |
200183 | Pearson | 1964 |
500000 | Riesel | 1964 |
30·106 | Froberg | 1968 |
3·109 | Brillhart, Tonascia, and Weinberger | 1971 |
6·109 | Lehmer | 1981 |
61·109 | Clark | 1996 |
4·1012 | Crandall, Dilcher, and Pomerance | 1997 |
46·1012 | Brown and McIntosh | 2001 |
200·1012 | Crump | 2002 |
1.25·1015 | Knauer and Richstein | 2005 |
3·1015 | Carlisle, Crandall, and Rodenkirch | 2006 |
6.7·1015 | Dorais and Klyve | 2011 |
10·1015 | PrimeGrid | 13.01.2012 |
14·1015 | PrimeGrid | 14.04.2012 |
14·1016 | PrimeGrid | 11.08.2014 |
За цей час верхня межа пошуку досягла вже 136·1015. PrimeGrid почав пошук з 3·1015. Причина цього полягає в тому, що Dorais і Klyve дали інше означення майже простого Віферіха. Таким чином вони не шукали майже простих Віферіха за класичним означенням. PrimeGrid не сподівався знайти простих Віферіха у проміжку між 3·1015 та 6.7·1015, але сподівався знайти декілька майже простих. Так сталося, що визначення майже простого Віферіха, що дали Dorais та Klyve зловило декілька «класичних» майже простих Віферіха, але не всі. PrimeGrid шукає майже прості за умовою |A| < = 1000.
Wall-Sun-Sun Prime Search[ред. | ред. код]
Просте Вола-Сунь-Сунь (або Фібоначчі-Віферіх) — це таке просте p > 5, для якого p2 ділить число Фібоначчі , де символ Лежандра визначається як
Хоча існує гіпотеза, що таких простих існує нескінчено багато, досі не відомо жодного Вола-Сунь-Сунь простого. Станом на листопад 2013, якщо вони і існують, вони мають бути більші за 26·1015.
Брак удачі в пошуку простих веде до зацікавленості в пошуку «майже» простих Вола-Сунь-Сунь. Вони визначаються як спеціальні випадки для малих значень |A|.
Класичне означення близькості[ред. | ред. код]
Просте число p, що задовільняє рівнянню для малих значень |A|, назагал називається майже простим Вола-Сунь-Сунь.
Історія пошуку[ред. | ред. код]
Вехня межа | Автор | Дата |
---|---|---|
109 | Williams | 1982 |
232 | Montgomery | 1991 |
100·1012 | Knauer and McIntosh | 2003 |
200·1012 | McIntosh and Roettger | 2005 |
970·1012 | Dorais and Klyve | 2011 |
1015 | PrimeGrid | 28.12.2011 |
1.5·1015 | PrimeGrid | 10.01.2012 |
2·1015 | PrimeGrid | 22.01.2012 |
2.5·1015 | PrimeGrid | 02.03.2012 |
6·1015 | PrimeGrid | 29.07.2012 |
28·1015 | PrimeGrid | 31.03.2014 |
Числа названі на честь Доналда Дайнса Вола (Donald Dines Wall) і братів близнюків Чжи Хон Суня (Zhi Hong Sun) та Чжи Вей Суня (Zhi Wei Sun), які в 1992 році показали, що якщо перша умова великої теореми Ферма не виконується для певного простого p, то p має бути простим числом Фібоначчі — Віферіха. Таким чином, до того, як велика теорема Ферма була доведена Ендрю Вайлсом, пошук простих Фібоначчі — Віферіха переслідував мету знайти потенційний контрприклад.
PrimeGrid шукає майже прості за умовою |A| < = 1000.
Завершені / призупинені підпроекти[ред. | ред. код]
- port 12007: PPSEhigh (ПЕРЕНЕСЕНО В BOINC)
- port 13000: 5oB (The Dual Sierpinski Problem) (ЗАВЕРШЕНО І ЗАКРИТО)
- port 9000: PPSE n>500K
- port 10000: PPSE n<500K
- port 12000: Proth Prime Search (ЗАВЕРШЕНО І ЗАКРИТО)
- port 12000: Sophie Germain Prime Search (ПРИПИНЕНО)
- port 14000: The Riesel Problem Double Check (ЗАВЕРШЕНО І ЗАКРИТО)
- port 7171: Sierpinski/Riesel Base 5 Project (ПЕРЕНЕСЕНО В BOINC)
- port 13005: Extended Sierpinski Problem (ПЕРЕНЕСЕНО В BOINC)
- port 12010: Mega Prime Search (ПЕРЕНЕСЕНО В BOINC)
- port 12005: GFN32768 (ПЕРЕНЕСЕНО В BOINC)
- port 12003: GFN65536 (ПЕРЕНЕСЕНО В BOINC)
- port 11002: GFN262144 (ПЕРЕНЕСЕНО В BOINC)
- port 11001: GFN524288 (ПЕРЕНЕСЕНО В BOINC)
- port 12004: Generalized Cullen/Woodall Prime Search (ПЕРЕНЕСЕНО В BOINC)
- port 13000: Wieferich Prime Search (ПРИЗУПИНЕНО)
- port 13001: Wall-Sun-Sun Prime Search (ПРИЗУПИНЕНО)
dual Sierpinski Problem[ред. | ред. код]
(також відомий як Five or Bust! або 5oB)
Проект Five or Bust! займався проблемою, що має назву dual Sierpinski Problem. Якщо проект Seventeen or Bust займається доведенням гіпотези, що k=78557 є найменшим непарним натуральним цілим, таким що k·2n+1 є складеними для будь-якого натурального n, 5oB займався доведенням гіпотези, що k=78557 є найменшим непарним натуральним цілим, таким що k+2n є складеним для будь-якого натурального n. Для цього достатньо показати, що для будь-якого непарного натурального k<78557 існує принаймні хоча б одне просте виду k+2n.
Проект отримав назву дуальної проблеми Серпінського з наступної причини. Якщо 78557·2n+1 є складеними для будь-якого натурального n, що станеться, якщо ми дозволимо n бути від'ємним? Ми отримаємо . Для k=78557 можна показати, що числа k+2n є складеними для будь-якого натурального n. Звідси виникла гіпотеза, що k=78557 є найменшим непарним натуральним цілим, таким що k+2n є складеним для будь-якого натурального n.
На початок проекту із 39278 таких k, існування простих було доведено для всіх, окрім 33 значень k. Із цих 33, імовірно прості були відомі для 28. Залишалось знайти прості або імовірно прості виду k+2n для 5 значень k. Тому проект також має назву Five or Bust! або 5oB.
9 лютого 2011 року останнє із 5 імовірно простих було знайдено. Таким чином проект успішно завершив свою активну фазу пошуку. Після цього залишалось довести, що знайдені імовірно прості є найменшими для своїх k. Це вимагало повторної перевірки всіх кандидатів менших за знайдені імовірно прості.
PrimeGrid координував зусилля з повторної перевірки. Повторна перевірка була застосована для наступних діапазонів k та n:
- k = 2131 для 1250056 < n < 4582936
- k = 40291 для 2282200 < n < 9091912
- k = 41693 для 2000327 < n < 5146239
Наприкінці жовтня 2011 року ця мета була досягнута, підпроект було успішно завершено.