Показать HN: Я создал тензорную библиотеку с нуля на C++/CUDA ( github.com/nirw4nna ) Привет, HN,
За последние несколько месяцев я создавал `dsc`, тензорную библиотеку с нуля на C++/CUDA. Мое основное внимание было уделено правильному написанию основ, приоритету чистого API, простоты и ясной наблюдаемости для локального запуска небольших LLM.
Ключевые особенности: – Ядро C++ с поддержкой CUDA, написанное с нуля. – Знакомый API Python в стиле PyTorch. – Запускает реальные модели: он достаточно полный, чтобы загрузить модель, например Qwen, из HuggingFace и запустить вывод как на CUDA, так и на CPU, изменив всего одну строку[1]. – Простая встроенная наблюдаемость как для Python, так и для C++.
Следующим шагом в планах является добавление поддержки BF16, а затем я займусь визуализацией для рабочих нагрузок GPU.
Проект пока находится на ранней стадии, и я буду невероятно благодарен за любые отзывы, обзоры кода или вопросы от сообщества HN!
Репозиторий GitHub: https://github.com/nirw4nna/dsc
[1]: https://github.com/nirw4nna/dsc/blob/main/examples/models/qw…
Это очень круто. Интересно, были бы некоторые шаблоны и операторы switch лучше, если бы было промежуточное представление и архитектура, подобная компилятору.
Мне также интересно, как это соотносится с чем-то вроде Jax.
Также интересно, как это соотносится с zml.
Source: news.ycombinator.com