Message boards :
Cafe :
Распараллеливание вложенных циклов
Message board moderation
Previous · 1 · 2 · 3 · 4 · Next
Author | Message |
---|---|
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Конечная часть работает на Ахиллесе-3 ? \r 23_71_0period_part.txt log = 1 (on) [logfile is "23_71_0period_part_res.txt"] 167312157610930616293854283: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 225967300707441567994484203: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 534658956614997652386022513: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 555934352508320091214192723: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] Паттерн здесь можно не выводить (он один и тот же), но я вывожу, чтобы было видно, по какому паттерну проверяется. Пока идут центральные 9-ки. Кстати, я сравнила эти центральные 9-ки с теми, которые выдала "бесконечная" программа для этого паттерна. Они совпадают! В "бесконечной" программе порядок генерации добавок естественный, я его не задаю сама комбинацией циклов. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Итак, в следующих 21 частях для первого паттерна циклы будут те же, а функция вычисления добавок будет меняться. Для второй части lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(7,43),Mod(v47[i47],47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])) для третьей части lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(10,43),Mod(v47[i47],47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])) и так далее. Размножить программы на эти части, конечно, можно и вручную. А потом надо получить таблицы данных для циклов на остальные 87 паттернов в таком виде, как показано в сообщении https://boinc.progger.info/odlk/forum_thread.php?id=314&postid=16313 для первого паттерна. И по таблицам данных получить те же конечные части, по 22 части на каждый паттерн. В 22 конечных частях для первого паттерна будет сгенерировано и проверено 2218917888*22 = 48816193536 добавок. Да, уточню: для других паттернов количества разрешённых остатков будут другие, поэтому все цифири будут не такие, как для первого паттерна, и конечных частей может быть не 22. Но методика разбиения на части не изменяется. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Цитата Кстати, у Corporal работают 36 "бесконечных" программ; поиск 19-ки с минимальным диаметром в нулевом периоде на периоде 71#. Corporal прислал новую порцию решении от 36 "бесконечных" программ. Как я уже сказала, эта программы ищут 19-ку с минимальным диаметром в нулевом периоде на периоде 71#. Но тут тактика поиска другая: ищутся приближения, а не центральные кортежи. Бегло просмотрела решения, очень хорошие! Самое лучшее приближение с valids=14. Не помню, было ли в этом поиске приближение с valids=14. Сейчас я его покажу. Вот 293559327105027290056363981: [0, 6, 12, 30, 48, 72, 90, 96, 100, 108, 138, 156, 162, 180, 210, 222, 232, 246, 252] valids=14 code=121981 number form=123961324934 Подробнее 293559327105027290056363981: [0, 6, 12, 30, 48, 72, 90, 96, 100, 108, 138, 156,162, 180, 210, 222, 232, 246, 252] 293559327105027290056363981: [0, 0, 0, 0, 6, 0, 0, 0, -20, -18, 6, 0, 0, 0, 0, 0, -8, 0, 0] 293559327105027290056363981: [1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1, 1] valids=14 code=121981 Код уникальный! Ещё +1 в спектр приближений к 19-ке с минимальным диаметром. Спектр содержит 62973 уникальных элемента. Остальные приближения ещё не проверила на уникальные коды. В приближении содержится приближение к ключевой 17-ке, сейчас проверю код. Вот приближение к ключевой 17-ке 293559327105027290056363987: [0, 6, 24, 42, 66, 84, 90, 94, 102, 132, 150, 156, 174, 204, 216, 226, 240] 293559327105027290056363987: [0, 0, 0, 6, 0, 0, 0, -20, -18, 6, 0, 0, 0, 0, 0, -8, 0] 293559327105027290056363987: [1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 0, 1] valids=12 code=28222 Код тоже уникальный! Ещё +1 в спектр приближений к ключевой 17-ке. Спектр содержит 28761 уникальный элемент. Пропущено 4007 элементов. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Ещё одна центральная 11-ка нашлась! 500643610282144273323599083: [0, 30, 48, 54, 78, 84, 90, 114, 120, 138, 168] [0, 6, 84, 90, 96, 114, 126, 156, 174, 180, 204, 210, 216, 240, 246, 264, 294, 306, 324, 330, 336, 414, 420] Это от "бесконечной" программы. Конечные программы пока центральных 11-к не нашли. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Однако одна конечная программа уже отстрелялась. Вот так ? \r 23_71_0period_part1.txt log = 1 (on) [logfile is "23_71_0period_part1_res.txt"] 503920572112855871746377043: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 364857978462852505300234003: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 283320167989212209150319463: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 323834640769523229010449223: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] sgenerirovano dobavok 2218917888 time = 16h, 14min, 29,703 ms. Время 16 часов с хвостиком. Сгенерировано добавок 2218917888, как и должно быть по моим подсчётам. Пока найдены только центральные 9-ки. Итак, конечные программы получены и прекрасно работают. Замечательно! Спросила у Corporal, какие конечные программы лучше сделать для тестирования: с малым временем (примерно полчаса) или с большим временем - как показанная здесь конечная программа. Он ответил, что лучше, конечно, с малым временем. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
И ещё одна центральная 11-ка найдена! 212960240550241653226902553: [0, 30, 48, 54, 78, 84, 90, 114, 120, 138, 168] [0, 6, 36, 96, 102, 120, 132, 162, 180, 186, 210, 216, 222, 246, 252, 270, 300, 312, 330, 336, 396, 426, 432] Это тоже от "бесконечной" программы. Отлично! |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Цитата А дальше ещё ровно 21 раз делаем точно такие же части по этой линейке По этой линейке я уже запустила значения, выделенные синим цветом v43=[6, 7, 10, 12, 15, 16, 23, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 42]; \\22 Некоторые части уже отработали. Работают несколько потоков на Ахиллесе и на Ахилеесе-3. Пока в этих конечных программах найдены только центральные 9-ки. Да, конечные программы надо перезапускать. Зато им не страшны вылеты. Если компьютер зависнет, прервутся только текущие программы. Их перезапустить не проблема. Тотальный поиск обеспечен, а это очень важно. Кстати, эта линейка при полном выполнении даст 2218917888*22 = 48816193536 добавок. Это, конечно, пока очень мало. Но начало уже есть! Напомню: общее количество добавок для первого паттерна 23-ки равно 959765417872588800. 48816193536 составляет 1/19660800 от общего количества добавок. Для BOINC-проекта это вполне реально обсчитать. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
А это одна конечная часть отработала на Ахиллесе (17:24) gp > \r 23_71_0period_part5.txt logfile = "23_71_0period_part5_res.txt" 215022869135559792958775563: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 392338130863760510382347833: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 441055617649916123459008843: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 149557716851631986888775223: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 307095069092733271519934203: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 239132150782258490654321863: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] sgenerirovano dobavok 2218917888 time = 15h, 44min, 1,343 ms. Время чуть поменьше, чем на Ахиллесе-3. Центральные девяточки хороши - все разные, потому что тут поиск выполняется по одному паттерну. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Итак, Corporal хочет для тестирования конечные программы с малым временем выполнения. Хорошо. Начинаю с первого паттерна. Будут циклы for(i53=1,32, for(i59=1,36, for(i61=1,38, for(i67=1,44, for(i71=1,48, и далее линейка v47=[2, 3, 6, 7, 8, 9, 12, 13, 17, 18, 19, 22, 26, 27, 28, 30, 32, 34, 35, 36, 40, 43, 44, 45]; \\24 В одной такой части будет сгенерировано 92454912 добавок. Работает такая программа примерно полчаса (у меня на Ахиллесе-3). Конечных программ будет 24. В первой программе этой серии из 24 программ функция вычисления добавок запишется так lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(7,43),Mod(2,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])) Дальше размножаем эту программу, изменяя только одну строку для функции вычисления добавок. Во второй программе lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(6,43),Mod(3,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])) в третьей программе lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(6,43),Mod(6,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])) и так далее. В 24-й программе lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(6,43),Mod(45,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])) Размножаются элементарно. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Первую программу серии для Corporal сделала и запустила ещё раз тестировать на черепашке, на всякий случай. Программа-то быстрая, полчаса всего. (14:16) gp > \r 23_71_0period_part1.txt 167312157610930616293854283: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 225967300707441567994484203: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] Всё пока нормально. Тут время не выводится и программа из консоли исчезнет, как завершится. Но первые центральные 9-ки видим, они правильные. Всё, программа завершилась, примерно 36 минут работала не черепашке. Больше центральных 9-к не видела, программа исчезла из консоли. Отправляю программу Corporal. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Пока Corporal будет работать с первой серией из 24 программ (для первого паттерна 23-ки), я подумаю, как размножить программы дальше. Ещё раз, цитата Будут циклы Ага, в 24 программах этой серии будет сгенерировано 92454912*24 = 2218917888 добавок. Теперь будем делать вторую серию программ. Будут работать две линейки v43=[6, 7, 10, 12, 15, 16, 23, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 42]; \\22 v47=[2, 3, 6, 7, 8, 9, 12, 13, 17, 18, 19, 22, 26, 27, 28, 30, 32, 34, 35, 36, 40, 43, 44, 45]; \\24 Как они будут работать, расскажу завтра на свежую голову. От каждой программы первой серии сделаем ровно 21 программу второй серии. Всего после размножения должно получиться 22*24 = 528 программ (включая 24 программы первой серии). Не знаю, справится ли Corporal с этим размножением. На этом планирую с первым паттерном закончить и перейти к следующему паттерну. Для следующего паттерна всё будет аналогично, только будет своя таблица данных для циклов. PS. В каждой из 528 программ будет сгенерировано 92454912 добавок, а во всех программах вместе 528*92454912 = 48816193536 добавок. Это, конечно, ещё небольшая часть от общего количества добавок. Зато все эти программы выполнятся быстро (в BOINC). И мы будем иметь возможность проверить такую же часть добавок для всех 88 паттернов. После чего можно продолжить размножение программ. Понятно, что вручную это делать не очень просто. Может быть, Corporal что-нибудь придумает для автоматизации процесса размножения программ. У меня пока нет идей. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
А в ручном проекте у меня веселее дело идёт. Цитата А дальше ещё ровно 21 раз делаем точно такие же части по этой линейке В этой линейке уже запущены значения, выделенные синим цветом v43=[6, 7, 10, 12, 15, 16, 23, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 42]; \\22 Осталось всего 4 программы запустить. И вся серия программ будет выполнена. У меня программы с большим временем выполнения (более 16 часов), ну, и части соответственно побольше. Пока найдены в конечных программах только центральные 9-ки, их довольно много находится. Вот пример для одной части, обсчитанной на Ахиллесе-3 134735180186132223893359603: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 135958151024415559021296553: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 212119008694607514278843503: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 40045559280355077773878993: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 95912081904910919713990363: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 309882388031349554567480773: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 433294545279684004245703813: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 43242847315551981423520633: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 192899551108994745573972853: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] sgenerirovano dobavok 2218917888 Отличные центральные девяточки! Они все разные, это найденные по первому паттерну 23-ки. В каждой такой части генерируется и проверяется 2218917888 добавок, о чём программа сообщает sgenerirovano dobavok 2218917888 (я поставила в программе счётчик генерируемых добавок). В сообщении https://boinc.progger.info/odlk/forum_thread.php?id=314&postid=16327 показана такая же часть (по объёму), обсчитанная на Ахиллесе. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Ну, у Corporal пока вообще никак дело не идёт. Выходной сегодня :) Может быть, завтра начнёт что-то делать. Цитата Теперь будем делать вторую серию программ. Итак, у нас есть 24 программы первой серии. Берём первую программу этой серии и заменяем в ней функцию вычисления добавок. При этом заменять её надо будет по линейке v43=[6, 7, 10, 12, 15, 16, 23, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 42]; \\22 21 раз (не считается первое число линейки, так как оно уже задействовано). Получаем 21 программу второй серии. Затем берём вторую программу первой серии и точно так же заменяем в ней функцию вычисления добавок 21 раз по линейке. Получаем ещё 21 программу второй серии. И так до 24-й программы первой серии. Как я уже писала выше, в двух сериях у нас будет 528 программ. Если 24 программы первой серии уже выполнены, их не надо выполнять второй раз. Надо будет выполнить только новые 504 программы. Вот и всё про размножение программ на втором этапе. Кстати, Corporal что-то мимоходом написал про скрипт. Возможно, у него в мыслях было, что можно написать скрипт для размножения программ. Да, наверное можно. Есть эталонный текст программы. Надо из него получить несколько других программ заменой всего одной строки в эталонном тексте. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Покажу конкретный пример размножения первой программы первой серии. В этой программе функция вычисления добавок имеет вид lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(6,43),Mod(2,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])); Линейка v43=[6, 7, 10, 12, 15, 16, 23, 25, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 40, 42]; \\22 Как видим, число 6 из этой линейки у нас уже задействовано в эталонной программе. Далее продолжаем. Во второй программе lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(7,43),Mod(2,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])); в третьей программе lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(10,43),Mod(2,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])); в четвёртой программе lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(12,43),Mod(2,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])); и так далее. Наконец, в 22-й программе lift(chinese([Mod(1,2),Mod(1,3),Mod(3,5),Mod(2,7),Mod(3,11),Mod(3,13),Mod(8,17),Mod(1,19),Mod(1,23),Mod(4,29),Mod(1,31),Mod(2,37),Mod(5,41),Mod(42,43),Mod(2,47),Mod(v53[i53],53),Mod(v59[i59],59),Mod(v61[i61],61),Mod(v67[i67],67),Mod(v71[i71],71)])); Всё! Получили 21 новую программу. Точно так же надо размножить все остальные программы первой серии. Мне понятно. Понятно ли Corporal? Размножать-то будет он. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Вот ещё проход на Ахиллесе-3 завершён ? \r 23_71_0period_part1.txt logfile = "23_71_0period_part1_res.txt" 197832902203419735271844263: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 370884322644200990118208153: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 415601496834075997697626813: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] 190119338148866825512077703: [0, 18, 24, 48, 54, 60, 84, 90, 108] [0, 24, 78, 84, 90, 108, 120, 150, 168, 174, 198, 204, 210, 234, 240, 258, 288, 300, 318, 324, 330, 384, 408] sgenerirovano dobavok 2218917888 time = 16h, 7min, 53,093 ms. Здесь мало найдено центральных 9-к. Разные бывают результаты (по количеству кортежей) в частях одинакового размера. Однако очень хорошо то, что все найденные кортежи различны. Здесь не должно быть повторов, так как все добавки генерируются разные. Перезапустила ещё одну такую часть, у меня осталось всего три таких части. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
И ещё один проход завершён ? \r 23_71_0period_part.txt Здесь побольше найдено центральных 9-к. Время стабильное. Количество генерируемых добавок постоянное. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Это центральные 9-ки, найденные на Ахиллесе конечными программами 521110305541133429414868013: [0, 18, 24, 48, 54, 60, 84, 90, 108] 299738851582997313132980773: [0, 18, 24, 48, 54, 60, 84, 90, 108] 436771162102517562399623983: [0, 18, 24, 48, 54, 60, 84, 90, 108] 159830481851499646806953773: [0, 18, 24, 48, 54, 60, 84, 90, 108] 132906704747278148802479803: [0, 18, 24, 48, 54, 60, 84, 90, 108] 231557686355298859313732413: [0, 18, 24, 48, 54, 60, 84, 90, 108] 159651539618055084772817083: [0, 18, 24, 48, 54, 60, 84, 90, 108] 15572450634593115277849273: [0, 18, 24, 48, 54, 60, 84, 90, 108] 6763844385238369923208153: [0, 18, 24, 48, 54, 60, 84, 90, 108] 500985971646125534440115683: [0, 18, 24, 48, 54, 60, 84, 90, 108] 211168829588820995206529653: [0, 18, 24, 48, 54, 60, 84, 90, 108] 337589566140034756400907493: [0, 18, 24, 48, 54, 60, 84, 90, 108] 109788052470579578770889653: [0, 18, 24, 48, 54, 60, 84, 90, 108] 477534886998798494141921083: [0, 18, 24, 48, 54, 60, 84, 90, 108] 138011826008938345485916333: [0, 18, 24, 48, 54, 60, 84, 90, 108] 320379375189952359454798063: [0, 18, 24, 48, 54, 60, 84, 90, 108] 350568842403925157789040703: [0, 18, 24, 48, 54, 60, 84, 90, 108] 108569424500253580774965493: [0, 18, 24, 48, 54, 60, 84, 90, 108] 21370223937603799575841963: [0, 18, 24, 48, 54, 60, 84, 90, 108] 89713548665781404701831933: [0, 18, 24, 48, 54, 60, 84, 90, 108] 112529528420112579616975573: [0, 18, 24, 48, 54, 60, 84, 90, 108] 215022869135559792958775563: [0, 18, 24, 48, 54, 60, 84, 90, 108] 392338130863760510382347833: [0, 18, 24, 48, 54, 60, 84, 90, 108] 441055617649916123459008843: [0, 18, 24, 48, 54, 60, 84, 90, 108] 149557716851631986888775223: [0, 18, 24, 48, 54, 60, 84, 90, 108] 307095069092733271519934203: [0, 18, 24, 48, 54, 60, 84, 90, 108] 239132150782258490654321863: [0, 18, 24, 48, 54, 60, 84, 90, 108] 388184053703556051170343553: [0, 18, 24, 48, 54, 60, 84, 90, 108] 232077393058816012668244723: [0, 18, 24, 48, 54, 60, 84, 90, 108] 456704536878133686232124473: [0, 18, 24, 48, 54, 60, 84, 90, 108] 504776821856329963012797163: [0, 18, 24, 48, 54, 60, 84, 90, 108] 209794190470016758050149143: [0, 18, 24, 48, 54, 60, 84, 90, 108] 258906205042465707976403593: [0, 18, 24, 48, 54, 60, 84, 90, 108] 175100188170688646169698833: [0, 18, 24, 48, 54, 60, 84, 90, 108] 458122893843872257820724343: [0, 18, 24, 48, 54, 60, 84, 90, 108] 365053443972243998645258023: [0, 18, 24, 48, 54, 60, 84, 90, 108] Два потока работают на Ахиллесе. |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Отсортировала в порядке возрастания 6763844385238369923208153, 15572450634593115277849273, 21370223937603799575841963, 89713548665781404701831933, 108569424500253580774965493, 109788052470579578770889653, 112529528420112579616975573, 132906704747278148802479803, 138011826008938345485916333, 149557716851631986888775223, 159651539618055084772817083, 159830481851499646806953773, 175100188170688646169698833, 209794190470016758050149143, 211168829588820995206529653, 215022869135559792958775563, 231557686355298859313732413, 232077393058816012668244723, 239132150782258490654321863, 258906205042465707976403593, 299738851582997313132980773, 307095069092733271519934203, 320379375189952359454798063, 337589566140034756400907493, 350568842403925157789040703, 365053443972243998645258023, 388184053703556051170343553, 392338130863760510382347833, 436771162102517562399623983, 441055617649916123459008843, 456704536878133686232124473, 458122893843872257820724343, 477534886998798494141921083, 500985971646125534440115683, 504776821856329963012797163, 521110305541133429414868013 Одинаковых нет. Да, это поразительно! Море центральных 9-к, а центральных 11-к нет пока ни одной от конечных программ. От "бесконечных" уже есть несколько центральных 11-к. А с центральными 13-ми вообще туго! Их нет пока и в BOINC-проекте, хотя там другой алгоритм поиска (все программы конечные и период равен 37#, и ищутся 21-ки). |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Найдена ещё одна центральная 11-ка "бесконечной" программой! 295670800661508486410580793: [0, 30, 48, 54, 78, 84, 90, 114, 120, 138, 168] [0, 12, 36, 96, 102, 120, 132, 162, 180, 186, 210, 216, 222, 246, 252, 270, 300, 312, 330, 336, 396, 420, 432] |
![]() ![]() Send message Joined: 6 Apr 17 Posts: 15196 Credit: 0 RAC: 0 |
Найдены ещё две центральные 11-ки! 545630597952234475480739803: [0, 30, 48, 54, 78, 84, 90, 114, 120, 138, 168] [0, 30, 84, 90, 96, 114, 126, 156, 174, 180, 204, 210, 216, 240, 246, 264, 294, 306, 324, 330, 336, 390, 420] 415919230154935362336185113: [0, 30, 48, 54, 78, 84, 90, 114, 120, 138, 168] [0, 12, 36, 96, 102, 120, 132, 162, 180, 186, 210, 216, 222, 246, 252, 270, 300, 312, 330, 336, 396, 420, 432] Это опять "бесконечными" программами найдено. Конечные программы пока не нашли центральную 11-ку. Кстати, у меня заканчиваются 24 конечные программы, остались две в работе. Остановлю на этом проверку первого паттерна, у меня для него работает "бесконечная" программа. Сделаю такие же 24 конечные программы для другого паттерна, для которого у меня не работают "бесконечные" программы. |
©2025 (C) Progger