2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9  След.
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 22:36 
Dmitriy40 в сообщении #1709060 писал(а):
В однопотоке пишет threading engine: single, а не pthread.

Да, точно.

-- 12.11.2025, 22:38 --

Yadryara
Так, ну что же. Теперь проверить работает ли gp2c
Даём команду
Код:
gp2c -v

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 22:41 
Аватара пользователя
Код:
yadryara@DESKTOP-QPP2F5P:~$ gp2c -v
GP to C compiler version 0.0.13
   targeted at PARI/GP 2.13.4 (STABLE)
Copyright 2000-2018 The PARI Group
GP2C is free software, covered by the GNU General Public License, and
you are welcome to change it and/or distribute copies of it under
certain conditions.  There is absolutely no warranty for GP2C.
yadryara@DESKTOP-QPP2F5P:~$

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 22:49 
Yadryara
Теперь копируйте целиком в командную строку линукс три строки и жмите Enter:

cat << EOF > hello.gp
print("Hello from gp2c")
EOF


это создаст файл hello.gp

затем команда
gp2c-run hello.gp

запустится pari/gp

там вводим
init_hello()

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 22:57 
Аватара пользователя
Код:
yadryara@DESKTOP-QPP2F5P:~$ cat << EOF > hello.gp
> print("Hello from gp2c")
> EOF
yadryara@DESKTOP-QPP2F5P:~$ gp2c-run hello.gp
Reading GPRC: /etc/gprc
GPRC Done.

                                          GP/PARI CALCULATOR Version 2.15.4 (released)
                                  amd64 running linux (x86-64/GMP-6.3.0 kernel) 64-bit version
                              compiled: Apr  1 2024, gcc version 13.2.0 (Ubuntu 13.2.0-23ubuntu3)
                                                   threading engine: pthread
                                         (readline v8.2 enabled, extended help enabled)

                                             Copyright (C) 2000-2022 The PARI Group

PARI/GP is free software, covered by the GNU General Public License, and comes WITHOUT ANY WARRANTY WHATSOEVER.

Type ? for help, \q to quit.
Type ?18 for how to get moral (and possibly technical) support.

parisize = 8000000, primelimit = 500000, nbthreads = 12
? init_hello()
Hello from gp2c
?

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 22:59 
Ура? ;-)

Что-то прям тоже захотелось поставить убунку в виртуалку, но 6ГБ дистрибутив (образ) и 20ГБ места на диске - фигушки.

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 23:06 
Yadryara в сообщении #1709065 писал(а):
? init_hello()
Hello from gp2c
?

Ну, поздравляю. :!:

Там по ходу дела мы установили mc
Надеюсь вы помните norton commander? :mrgreen: Это почти он.

Надо вам определиться теперь, где будете файлы складывать.

Читайте вот это: https://learn.microsoft.com/ru-ru/windo ... ilesystems

Вы, кстати, Windows Terminal установили? :wink:

pari/gp 2.15.4 вас не смущает? Можно в общем-то поднять и до текущей 2.17.2 но может не прямо сейчас, а как отойдёте от квеста.

-- 12.11.2025, 23:15 --

Dmitriy40 в сообщении #1709066 писал(а):
Что-то прям тоже захотелось поставить убунку в виртуалку, но 6ГБ дистрибутив (образ) и 20ГБ места на диске - фигушки.

6ГБ не надо. Вам же только CLI. Нужен минимум миниморум. Необязательно ubuntu, и можно собирать самостоятельно, ну или посмотреть в каких дистро сейчас свежая pari в репозиториях. Оно если собирать-то и лучше, ибо соберется под ваше окружение (я не думаю, что разрабы прямо предусмотрели использование чего-то типа avx, sse и т.п., но не знаю может это компиляторы сами где-то оптимизируют...).
Ну под диск отвести наверное под 5-7ГБ неплохо бы, если кроме pari вам от линукса ничего не надо.

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 23:18 
Аватара пользователя
wrest в сообщении #1709067 писал(а):
Ну, поздравляю. :!:

Спасибо. Хотя рановато. Я ещё не увидел ускорения.

wrest в сообщении #1709067 писал(а):
Там по ходу дела мы установили mc
Надеюсь вы помните norton commander? :mrgreen:

Да. И Дос-навигатор помню. А также помню что вы продолжаете злобные смайлики ставить один за другим.

wrest в сообщении #1709067 писал(а):
Надо вам определиться теперь, где будете файлы складывать.

Посоветуйте. Мне пока проще прислушиваться к вашим советам чем иметь собственное мнение.

wrest в сообщении #1709067 писал(а):

Спастбо.

wrest в сообщении #1709067 писал(а):
Вы, кстати, Windows Terminal установили? :wink:

Вроде нет. Мне пока проще в точности и пошагово следовать вашим советам.

wrest в сообщении #1709067 писал(а):
pari/gp 2.15.4 вас не смущает?

Смущает. Весь залился краской.

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 23:21 
wrest в сообщении #1709067 писал(а):
pari/gp 2.15.4 вас не смущает?
А должно смущать, потому в более новых было исправлено как минимум вот это:
Код:
11- forprime(p=1099505335069-100000,1099505335069+10000,) -> crash    [F16]
11- forprime(p=524288,1048576,1) -> crash [#2584]
    forprime(p=1048607,1048617,1) -> oo loop                          [F11]
2- tunings of forprime over "short" intervals (use sieve more frequently)
Т.е. версиям до 2.17.2 нет особой веры при использовании forprime (после того как её кажется в 2.15 "оптимизировали" и поломали). Ну и на пару других ошибок можно наткнуться.

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение12.11.2025, 23:24 
Yadryara в сообщении #1709069 писал(а):
Мне пока проще в точности и пошагово следовать вашим советам.

так я вам этот совет дал 5 раз (это шестой) в этой теме:

Терминал можно установить из командной строки powershell (не из линукса)
winget install --id Microsoft.WindowsTerminal -e

-- 12.11.2025, 23:34 --

В общем-то, вы можете запускать pari и из командной строки windows (cmd.exe тоже подойдёт) например так
wsl gp

Надо понять какие ваши нужды -- что и как вы делаете с pari/gp, запускаете ли скрипты из файлов, сохраняете результаты в файлы и т.п.

Я например поскольку pari/gp это больше такое э... хобби и меня привлекают изящные однострочные программы, набираю или прямо в pari/gp или в текстовом файле и потом копипаст в pari, и это всё в основном на планшете. Читать скрипты из файлов или писать что-то в файлы необходимость для меня редкая, но у вас может быть по-другому всё.

Так что если сможете, подумайте и опишите существующий или желаемый workflow (не прямо сейчас. поразмышляйте).

-- 12.11.2025, 23:41 --

Yadryara в сообщении #1709069 писал(а):
Посоветуйте. Мне пока проще прислушиваться к вашим советам чем иметь собственное мнение.

Ну как я написал выше, зависит от вас больше.
Лично я на windows ноутбуке (где редко запускаю pari/gp) складываю скрипты вот в такой каталог
\\wsl.localhost\Ubuntu\home\yadryara\gp_scripts
до него я могу дотянуться например привычным windows explorer-ом

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение13.11.2025, 07:49 
Аватара пользователя
wrest в сообщении #1709071 писал(а):
Yadryara в сообщении #1709069 писал(а):
Мне пока проще в точности и пошагово следовать вашим советам.

так я вам этот совет дал 5 раз (это шестой) в этой теме:

Ну так я же не зря написал "пошагово". Этот ваш неоднократный совет был не в начале, а в середине или в конце поста. А я выполнял пока то что было в начале. И регулярно встречались сложности. Дмитрий прав, это именно эпопея.

wrest в сообщении #1709071 писал(а):
Терминал можно установить из командной строки powershell (не из линукса)winget install --id Microsoft.WindowsTerminal -e

Вроде получилось:

Код:
Windows PowerShell
(C) Корпорация Майкрософт (Microsoft Corporation). Все права защищены.

Попробуйте новую кроссплатформенную оболочку PowerShell (https://aka.ms/pscore6)

PS C:\Windows\system32> winget install --id Microsoft.WindowsTerminal -e
Перед использованием источника "msstore" необходимо просмотреть следующие соглашения.
Terms of Transaction: https://aka.ms/microsoft-store-terms-of-transaction
Для правильной работы источника требуется отправить во внутреннюю службу двухбуквенный код текущего региона компьютера (например, "RU").

Вы согласны со всеми условиями исходных соглашений?
[Y] Да  [N] Нет: Y
Найдено Windows Terminal [Microsoft.WindowsTerminal] Версия 1.23.12811.0
Лицензия на это приложение предоставлена вам владельцем.
Корпорация Майкрософт не несет ответственность за сторонние пакеты и не предоставляет для них никакие лицензии.
Для этого пакета требуются следующие зависимости:
  - Пакеты
      Microsoft.UI.Xaml.2.8 [>= 8.2306.22001.0]
Хэш установщика успешно проверен
Запуск установки пакета...
  ██████████████████████████████  100%
Успешно установлено
PS C:\Windows\system32>


wrest в сообщении #1709071 писал(а):
В общем-то, вы можете запускать pari и из командной строки windows (cmd.exe тоже подойдёт) например так
wsl gp

Получилось.

wrest в сообщении #1709071 писал(а):
Надо понять какие ваши нужды -- что и как вы делаете с pari/gp, запускаете ли скрипты из файлов, сохраняете результаты в файлы и т.п.

Конечно, я же вот только вчера написал, что у меня не просто счёт прервался, а ещё и пробелы в логах появились. Так вот появились они на месте полезной инфы. Но только в самом конце, в последних 5-8%. И что, я самого начала пересчитывал? Не-а. Потому что бо́льшая часть логов в порядке.

wrest в сообщении #1709071 писал(а):
Так что если сможете, подумайте и опишите существующий или желаемый workflow

Ну вот я же вам присылал прогу для теста. И я специально записи в логи не удалил, а закоментил, чтоб вам видно было.

То есть это и есть рабочая прога, только без записи в файлы и с укороченным объёмом работы. У меня на обычном PARI она отработала за 66 секунд.

И вот задача стоит вполне конкретная. Как мне эту прогу скомпилить и сравнить время.

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение13.11.2025, 08:31 
Yadryara в сообщении #1709077 писал(а):
И вот задача стоит вполне конкретная. Как мне эту прогу скомпилить и сравнить время.

Если у вас есть файл например penta.gp то
Сперва запустите без компиляции 2-3 раза и засеките время.
gp penta.gp
Затем запускаете скомпилированный
Тут два варианта
gp2c-run penta.gp -- без управления стеком в функциях. может переполняться стек, а может и нет (зависит от программы)
gp2c-run -g penta.gp -- с управлением стеком, переполняться не должно если в инетрпретаторе не преполняется

Когда отработает gp2c-run (скомпилирует вашу программу), вы увидите что запустился gp
Там (в gp) запускаете вашу программу
init_penta()

для повторного запуска без изменений в тексте программы (т.е. когда не нужно компилировать заново) можно запускать так
gp penta.gp.run - файл penta.gp.run будет создан на этапе компиляции, и именно его в итоге и запускает gp2c

-- 13.11.2025, 09:27 --

Yadryara
Вопрос теперь как файл окажется внутри линукса.
Ну я бы наверное делал так.

В линуксе запускаете mc
При помощи mc создаёте папку для скриптов в домашней папке пользователя yadryara

Дальше открываете виндовс проводник и находите там эту новую папку. Копируете в неё ваш скрипт penta.gp
Возвращаетесь в окно с линуксом и там при помощи mc заходите в эту папку -- должны увидеть в ней скрипт.
Нажимаете Ctrl-O в mc и оказываетесь в командной строке, в папке со скриптом.
Ну и далее команды предыдущего поста.
Логи можете смотреть вьювером в mc или из windows.

Зачем отдельная папка. gp2c будет создавать несколько файлов (результаты компиляции), вот чтобы они не замусоривали вам там где не нужно, пусть для этого будет папка.

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение13.11.2025, 09:47 
Аватара пользователя
wrest в сообщении #1709078 писал(а):
Сперва запустите без компиляции 2-3 раза и засеките время.
gp penta.gp

Это из Ubuntu надо запускать? А как путь указать? Вот так у меня пока не получилось:

Код:
gp C:\Pentadecatlon\24divisors\20\wrest-2.gp


-- 13.11.2025, 10:16 --

Получилось из консоли вот так:

Код:
cd C:\Pentadecatlon\24divisors\20

wsl gp wrest-2.gp


-- 13.11.2025, 10:38 --

wrest в сообщении #1709078 писал(а):
В линуксе запускаете mc
При помощи mc создаёте папку для скриптов в домашней папке пользователя yadryara

Дальше открываете виндовс проводник и находите там эту новую папку. Копируете в неё ваш скрипт penta.gp
Возвращаетесь в окно с линуксом и там при помощи mc заходите в эту папку -- должны увидеть в ней скрипт.
Нажимаете Ctrl-O в mc и оказываетесь в командной строке, в папке со скриптом.

Это сделать удалось.

wrest в сообщении #1709078 писал(а):
Ну и далее команды предыдущего поста.

А дальше не получилось:

Код:
yadryara@DESKTOP-QPP2F5P:~$ mc

yadryara@DESKTOP-QPP2F5P:~/D24-20$ gp2c-run wrest-2.gp
/usr/bin/gp2c: Permission denied
yadryara@DESKTOP-QPP2F5P:~/D24-20$ gp2c-run -g wrest-2.gp
/usr/bin/gp2c: Permission denied
yadryara@DESKTOP-QPP2F5P:~/D24-20$

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение13.11.2025, 10:49 
Yadryara в сообщении #1709082 писал(а):
Получилось из консоли вот так:

Ну если заработало - то и хорошо :idea:

Указанный путь к папке в линуксе будет
/mnt/c/Pentadecatlon/24divisors/20

Путь к файлу соответственно
/mnt/c/Pentadecatlon/24divisors/20/wrest-2.gp

Переход в папку в линуксе - тоже команда cd как и в windows, т.е.
cd /mnt/c/Pentadecatlon/24divisors/20

-- 13.11.2025, 10:55 --

Yadryara в сообщении #1709082 писал(а):
А дальше не получилось:

Ага. Надо конвертироваться в админа. В линуксе команда:
sudo usermod -a -G sudo yadryara

Это конечно не феншуйно, но поскольку линукс у вас не выставлен в интернет напрямую, то и сойдёт.

После этого вам в команды не надо будет добавлять sudo впереди. Надо было сразу наверное это сделать...

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение13.11.2025, 10:58 
Аватара пользователя
wrest, но скомпилить пока не получилось. См. выше.

Времена в секундах пока такие:

Код:
PARI       Консоль
       gp.exe    wsl gp    Компиляция

66.6     66.1      69.2           ???


-- 13.11.2025, 11:01 --

wrest в сообщении #1709084 писал(а):
Ага. Надо конвертироваться в админа. В линуксе команда:
sudo usermod -a -G sudo yadryara

Не помогло. Пока всё то же самое:

Код:
yadryara@DESKTOP-QPP2F5P:~/D24-20$ sudo usermod -a -G sudo yadryara
[sudo] password for yadryara:
yadryara@DESKTOP-QPP2F5P:~/D24-20$ gp2c-run wrest-2.gp
/usr/bin/gp2c: Permission denied
yadryara@DESKTOP-QPP2F5P:~/D24-20$ gp2c-run -g wrest-2.gp
/usr/bin/gp2c: Permission denied
yadryara@DESKTOP-QPP2F5P:~/D24-20$


-- 13.11.2025, 11:11 --

Кстати, а файл для компиляции как должен заканчиваться?

У меня после quit записана куча полезной инфы и интерпретатору это не мешает. Будет ли это мешать компилятору?

 
 
 
 Re: Как установить Ubuntu под Win10 в WSL
Сообщение13.11.2025, 11:43 
Yadryara в сообщении #1709085 писал(а):
Не помогло. Пока всё то же самое:

Видимо, у линукса нет прав запись на папку
/mnt/c/Pentadecatlon/24divisors/20
Но это не точно :D

Это требует дополнительного исследования, наверняка это решаемо, но я сходу не скажу как. Это как раз вопрос который я задавал ранее
wrest в сообщении #1709071 писал(а):
подумайте и опишите существующий или желаемый workflow (не прямо сейчас. поразмышляйте).


Пока что копируйте файл в файловую систему линукса, в папку которую вы там создали. И запускайте gp2c-run в той папке.

 
 
 [ Сообщений: 123 ]  На страницу Пред.  1 ... 4, 5, 6, 7, 8, 9  След.


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group