7.09.2025 состоялся релизPithon 3.14!
На фоне хайпа про NoGIL всё позабыли про другие фичи. Особенно про Multiple Interpreters, который обещает изоляцию процессов но с эффективностью потоков! На сколько действительно это будет эффективно мы узнаем позже, потому что сейчас это лишь первый релиз с ограничениями и недоработками.
Но что там про NoGIL? Теперь этот режим не экспериментальный, а официально поддерживаемый, но опциональный.
Чтобы запустить без GIL нужна специальная сборка. И перед стартом нужно объявить переменную PYTHON_GIL=0
Для вас я собрал готовый репозиторий где достаточно запустить скрпит, который всё сделает:
▫️ соберет релизный Python 3.14 в новый Docker-образ
▫️ запустит тесты в контейнере (GIL, NoGIL, MultiInterpreter)
▫️ распечатает результаты
Тест очень простой, усложняйте сами)
Вот какие результаты у меня:
=== Running ThreadPoolExecutor GIL ON
TOTAL TIME: 45.48 seconds
=== Running ThreadPoolExecutor GIL OFF
TOTAL TIME: 6.14 seconds
=== Running basic Thread GIL ON
TOTAL TIME: 45.54 seconds
=== Running basic Thread GIL OFF
TOTAL TIME: 4.74 seconds
=== Running with Multi Interpreter
TOTAL TIME: 18.30 seconds
Если сравнивать GIL и NoGIL, то на мои 32 ядра прирост х7-x10 (почему не х32? 🤷). При этом нам обещают что скорости будут расти с новыми релизами.
Режим без GIL похож (визуально) на async, тоже параллельно, тоже не по порядку. Но это не IO! и от того некоторый диссонанс в голове 😵💫, нас учили не так!
Интересно, что чистый Thread работает быстрей чем ThreadPoolExecutor без GIL.
Ну и где-то плачет один адепт мульти-интерпретаторов😭 Теперь нужно искать где они могут пригодиться с такой-то скоростью. Скорее всего своя область применения найдется.
Отдельно я затестил память и вот что вышло на 32 потока:
ThreadPoolExecutor GIL ON
305.228 MB
ThreadPoolExecutor GIL OFF
500.176 MB
basic Thread GIL ON
90.668 MB
basic Thread GIL OFF
472.444 MB
with Multi Interpreter
1267.788 MB
Пока не знаю как к этому относиться)
В целом - радует направление развития!
#release
#python#agents#graph#llms#rag
Graphiti helps AI systems handle constantly changing information by building real-time knowledge graphs that track relationships and historical data, allowing them to integrate user interactions, business data, and external sources seamlessly. Unlike traditional methods, it updates information instantly without needing full recomputations, enabling precise historical queries and efficient hybrid searches. This helps AI applications stay context-aware, automate tasks effectively, and manage complex, evolving data with minimal delay.
https://github.com/getzep/graphiti
#typescript#csv#diagrams#graph#json#nextjs#react#tool#visualization#yaml
JSON Crack is a free, open-source tool that instantly turns complex JSON, YAML, CSV, XML, or TOML data into clear, interactive graphs, making it easier to explore and understand your information. It lets you convert between formats, validate data, generate code (like TypeScript interfaces), run queries, and export visuals as images—all while keeping your data private since everything processes locally on your device[1][2][5].
https://github.com/AykutSarac/jsoncrack.com
#cplusplus#arduino#cansat#csv#embedded#graph#ground_station#iot#microcontroller#network#projects#qt#serial#serial_studio
Serial Studio is a free, easy-to-use tool that lets you visualize real-time data from devices like microcontrollers via serial ports, Bluetooth, or network connections. It works on Windows, macOS, and Linux, and offers customizable dashboards with various widgets to monitor sensor data, debug info, or telemetry. You can quickly plot data, export it as CSV for analysis, and even use advanced features like checksum validation and JavaScript data processing. It supports hobbyists, educators, and professionals by simplifying data monitoring and debugging, saving you time and effort in understanding your device’s output. Pro versions add commercial use and extra features[1][4][5].
https://github.com/Serial-Studio/Serial-Studio
#rust#ai#ai_ocr#attention_mechanism#gnn#gnn_model#gnns#graph#graph_neural_networks#llm_inference#low_latency#mincut#neo4j#ocr#onnx#rust#vector#wasm
RuVector is a free, open-source vector database that gets smarter with every query. Unlike static databases, it learns from usage via GNN layers, runs LLMs locally with no cloud costs, supports graph queries like Neo4j, scales freely across nodes, and deploys as a single self-booting file (125ms startup). Run with `npx ruvector`. You benefit from faster, more accurate AI search that improves automatically, zero operating costs, full offline/privacy control, and easy scaling—perfect for RAG, agents, or edge apps without vendor lock-in.
https://github.com/ruvnet/ruvector