Опубликованы результаты тестирования потребления памяти при выполнении кода, создающего миллион параллельно выполняемых сопрограмм. Тестирование проведено для типовой программы, реализованной на языках программирования Rust, C#, Go, Java, Python и JavaScript.
В Rust задачи создавались с использованием фреймворка Tokio и на базе библиотеки async_std, в C# — API List‹Task›(), JavaScript — async/await в Node.js, Python — asyncio, Go — goroutine, Java — сопрограммы. Используемые версии и конфигурация: Rust 1.82, .NET 9.0.100 с NativeAOT,
Go 1.23.3, OpenJDK/GraalVM 23.0.1, NodeJS 23.2.0, Python 3.13.0.
Результаты:
- Запуск одной задачи для оценки потребления памяти в runtime.
- Запуск 10 тысяч задач.
- Запуск 100 тысяч задач.
- Запуск миллиона задач.
- Похожий прошлогодний тест с запуском миллиона задач.
Источник: http://www.opennet.ru/opennews/art.shtml?num=62314