memory heap
Сравнение скорости обработки текстовых данных через Guile-DSV. В первом случае (верхняя синяя линия на графике) тест проходил на оригинальной версии Guile-DSV с рукописным ДКА, а во втором случае (оранжевая нижняя линяя на графике) — с ДКА, сгенерированным…
Исправил ошибки в профилировщике детерминированных конечных автоматов из поставки Guile-SMC, исправления пойдут в следующий релиз.
Использование профилировщика на примере Guile-DSV:
Кусок файла
#dev #projects #guile #dsv #smc
Использование профилировщика на примере Guile-DSV:
$ dsv --log-driver file --log-opt=file=smc.log -F rfc4180 --to unix datasets/covid.csv > test.csv
$ smc profile smc.log
Total transitions: 1661324
Total time: 84173181 us
Stats:
read_quote: 30647003 us (36.4095 %)
read_quoted_field: 27615130 us (32.8075 %)
read_field_first_char: 23677038 us (28.1290 %)
add_row: 2233946 us (2.6540 %)
add_final_row: 35 us (.0000 %)
read_first_field_first_char: 29 us (.0000 %)
Кусок файла
smc.log:$ head smc.log
2023-08-10 21:19:05.522313 (DEBUG): [*] -> [read_first_field_first_char]
2023-08-10 21:19:05.522342 (DEBUG): [read_first_field_first_char] -> [read_quoted_field]
2023-08-10 21:19:05.522377 (DEBUG): [read_quoted_field] -> [read_quote]
2023-08-10 21:19:05.522427 (DEBUG): [read_quote] -> [read_field_first_char]
2023-08-10 21:19:05.522448 (DEBUG): [read_field_first_char] -> [read_quoted_field]
2023-08-10 21:19:05.522483 (DEBUG): [read_quoted_field] -> [read_quote]
2023-08-10 21:19:05.522508 (DEBUG): [read_quote] -> [read_field_first_char]
2023-08-10 21:19:05.522527 (DEBUG): [read_field_first_char] -> [read_quoted_field]
2023-08-10 21:19:05.522556 (DEBUG): [read_quoted_field] -> [read_quote]
2023-08-10 21:19:05.522585 (DEBUG): [read_quote] -> [read_field_first_char]
#dev #projects #guile #dsv #smc
GitHub
GitHub - artyom-poptsov/guile-smc: GNU Guile State Machine Compiler
GNU Guile State Machine Compiler. Contribute to artyom-poptsov/guile-smc development by creating an account on GitHub.
⚡1
Выпустил релиз Guile-SMC 0.6.2:
https://github.com/artyom-poptsov/guile-smc/releases/tag/v0.6.2
Ключевые изменения:
- Исправлена ошибка с процедурой
- Исправлена ошибка высчитывания отметок времени в модуле
- Исправлен рассчёт времени в модуле
- В модуль
- Теперь Guile-SMC позволяет задавать
- В модуле
- Обновлена документация.
Новый релиз обратно совместим с версиями 0.6.0 и 0.6.1.
#dev #projects #guile #smc
https://github.com/artyom-poptsov/guile-smc/releases/tag/v0.6.2
Ключевые изменения:
- Исправлена ошибка с процедурой
pre-action в модуле (smc context functional char): Теперь процедура во всех случаях возвращает контекст.- Исправлена ошибка высчитывания отметок времени в модуле
(smc trace-context). Теперь значение отметок времени всегда получается положительным, как и должно. При этом, если всё же обнаруживается уход времени в отрицательные значения, бросается ошибка.- Исправлен рассчёт времени в модуле
(smc cli command-profile) профайлера. Теперь профайлер Guile-SMC даёт правильные значения суммарного времени работы ДКА и времени для каждого отдельно взятого состояния.- В модуль
(smc context oop generic) добавлен недостающий модуль (smc core log). Его отсутствие приводило бы к ошибками при попытке использования (smc context oop generic).- Теперь Guile-SMC позволяет задавать
pre-action и post-action для ДКА прямо в PlantUML описании. Эти процедуры выполняются перед всеми остальными проверками для каждого состояния, и могут например использоваться для обновления счётчиков в контексте. Пример задания этих процедур в PlantUML файле описания ДКА:legend- Для класса
pre-action: custom-pre-action
post-action: custom-post-action
endlegend
<fsm> в модуле (smc fsm) теперь добавлены процедуры для задания pre-action (fsm-pre-action-set!) и post-action (fsm-post-action-set!). Также из модуля экспортированы процедуры fsm-pre-action и fsm-post-action для получения текущих значений pre-action и post-action соответственно.- В модуле
(smc core log) теперь регистрируется логгер по-умолчанию, под именем "guile-smc". Также добавлена процедура smc-log-default-logger.- Обновлена документация.
Новый релиз обратно совместим с версиями 0.6.0 и 0.6.1.
#dev #projects #guile #smc
GitHub
Release v0.6.2 · artyom-poptsov/guile-smc
Version 0.6.2
⚡1
Axis of Ordinary
The first room-temperature ambient-pressure superconductor? Discussion: 1. https://news.ycombinator.com/item?id=36864624 2. https://marginalrevolution.com/marginalrevolution/2023/07/claims-about-room-temperature-superconductivity.html Prediction market:…
Thunderf00t про нашумевший сверхпроводник LK-99:
https://youtu.be/p3hubvTsf3Y
Судя по этой информации, в этом LK-99 шума действительно больше, чем правды и пользы.
https://youtu.be/p3hubvTsf3Y
Судя по этой информации, в этом LK-99 шума действительно больше, чем правды и пользы.
⚡1
memory heap
Сравнение скорости обработки текстовых данных через Guile-DSV. В первом случае (верхняя синяя линия на графике) тест проходил на оригинальной версии Guile-DSV с рукописным ДКА, а во втором случае (оранжевая нижняя линяя на графике) — с ДКА, сгенерированным…
Провёл ещё один замер производительности Guile-DSV с новым ДКА, сделанным на базе Guile-SMC, используя датасет "Feed Grains: Yearbook Tables" на почти полмиллиона строк (498929 строк, если быть точным.)
Время на графиках в секундах.
Новая версия парсера работает быстрее старого на этом примере примерно в 15 раз.
Конечно, сорость обработки данных ещё зависит от самих данных и их формата. Например, парсер Unix-формата DSV работает быстрее, поскольку там нюансов меньше, и следовательно сам ДКА для Unix-формата проще.
#dev #projects #guile #dsv
Время на графиках в секундах.
Новая версия парсера работает быстрее старого на этом примере примерно в 15 раз.
Конечно, сорость обработки данных ещё зависит от самих данных и их формата. Например, парсер Unix-формата DSV работает быстрее, поскольку там нюансов меньше, и следовательно сам ДКА для Unix-формата проще.
#dev #projects #guile #dsv
⚡1
memory heap
Выпустил релиз Guile-SMC 0.6.2: https://github.com/artyom-poptsov/guile-smc/releases/tag/v0.6.2 Ключевые изменения: - Исправлена ошибка с процедурой pre-action в модуле (smc context functional char): Теперь процедура во всех случаях возвращает контекст.…
Guile-SMC 0.6.2 теперь в GNU Guix:
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=e28e76fc4ab2727a1bacbcfdead15298ea7d76fe
#gnu #guix #patches
https://git.savannah.gnu.org/cgit/guix.git/commit/?id=e28e76fc4ab2727a1bacbcfdead15298ea7d76fe
#gnu #guix #patches
Выпустил релиз Guile-DSV 0.7.0:
https://github.com/artyom-poptsov/guile-dsv/releases/tag/v0.7.0
Анонс в списке рассылки
https://mail.gnu.org/archive/html/guile-user/2023-08/msg00050.html
Ключевые изменения:
- Guile-DSV теперь использует Guile State Machine Compiler (Guile-SMC) для генерации кода парсеров формата Unix и RFC 4180 из PlantUML описания во время сборки. Это изменение позволило сократить количество кода на Scheme, и сделать описание парсера более читаемое и краткое. Кроме того, новая версия парсеров работает от 3 до 15 раз быстрее старой версии (замеры: 1, 2).
- Процедуры
- Утилита
#dev #projects #guile #dsv
https://github.com/artyom-poptsov/guile-dsv/releases/tag/v0.7.0
Анонс в списке рассылки
guile-user:https://mail.gnu.org/archive/html/guile-user/2023-08/msg00050.html
Ключевые изменения:
- Guile-DSV теперь использует Guile State Machine Compiler (Guile-SMC) для генерации кода парсеров формата Unix и RFC 4180 из PlantUML описания во время сборки. Это изменение позволило сократить количество кода на Scheme, и сделать описание парсера более читаемое и краткое. Кроме того, новая версия парсеров работает от 3 до 15 раз быстрее старой версии (замеры: 1, 2).
- Процедуры
dsv->scm и dsv-string->scm теперь поддерживают дополнительные именованные параметры: #:debug-mode? (включить/выключить режим отладки), #:log-driver (установить драйвер логирования; по-умолчанию используется "syslog"), #:log-opt (установить параметры драйвера логирования — см. документацию для детального описания.)- Утилита
dsv теперь также поддерживает опции --log-driver и --log-opt — см. dsv --help для справки.#dev #projects #guile #dsv
GitHub
Release v0.7.0 · artyom-poptsov/guile-dsv
Version 0.7.0
⚡2
Forwarded from Татьяна Губина ✨
В 2023 году преподаватели колледжей из 20 регионов России обучились работе с ОС «Альт» и внедрили ее в учебный процесс | BaseALT
https://www.basealt.ru/about/news/archive/view/v-2023-godu-prepodavateli-kolledzhei-iz-20-regionov-rossii-obuchilis-rabote-s-os-alt-i-vnedrili-ee-v-uchebnyi-process
https://www.basealt.ru/about/news/archive/view/v-2023-godu-prepodavateli-kolledzhei-iz-20-regionov-rossii-obuchilis-rabote-s-os-alt-i-vnedrili-ee-v-uchebnyi-process
www.basealt.ru
В 2023 году преподаватели колледжей из 20 регионов России обучились работе с ОС «Альт» и внедрили ее в учебный процесс
Российский разработчик операционных систем «Альт»
Archillect
Photo
1976 Alfa Romeo 33 Navajo:
https://www.motor1.com/features/393554/alfa-romeo-navajo-bertone-supercar-sunday/
Данный концепт автомобиля был представлен в 1976-м году на Geneva Motor Show.
И ещё несколько изображений данного автомобиля:
https://www.supercars.net/blog/1976-alfa-romeo-33-navajo-concept-wallpapers/
https://www.motor1.com/features/393554/alfa-romeo-navajo-bertone-supercar-sunday/
Данный концепт автомобиля был представлен в 1976-м году на Geneva Motor Show.
И ещё несколько изображений данного автомобиля:
https://www.supercars.net/blog/1976-alfa-romeo-33-navajo-concept-wallpapers/
Motor1.com
1976 Alfa Romeo 33 Navajo By Bertone: Supercar Sunday
The Alfa Romeo 33 Navajo was the last of a series of concept cars designed by Bertone and built on the bones of the iconic 33 Stradale.