FlashLib:专为经典机器学习算子打造的 GPU 加速库

📅 2026年05月29日 · 技术

文章封面

提到 GPU 加速的机器学习库,大家首先想到的是 PyTorch、TensorFlow 这类深度学习框架。但你有没有遇到过这种场景——想跑一个 K-Means 聚类或者 PCA 降维,数据量大到 CPU 版本跑不动,但又不至于要上深度学习?FlashLib 就是为这个痛点而生的。

一句话概括

FlashLib 是一个专注于经典机器学习算子的 GPU 加速库。它覆盖了 K-Means、KNN、PCA、SVD、DBSCAN、HDBSCAN、UMAP、t-SNE 等 15 个高频算子,全部基于 Triton 和 CuteDSL 底层实现,追求极致的速度和内存效率。

为什么要单独做一个 ML 算子库?

虽然 scikit-learn 很好用,但它跑在 CPU 上,数据量稍大就力不从心。而 cuML 需要 RAPIDS 全家桶,依赖重、安装麻烦。FlashLib 走的是轻量路线——一个 pip install flashlib 就搞定,API 也保持了 scikit-learn 风格,迁移成本极低:

import torch
from flashlib import flash_kmeans

x = torch.randn(1_000_000, 128, device="cuda")
labels, centroids, n_iter = flash_kmeans(x, n_clusters=1024, max_iters=20)

亮点:一个聪明的 info 模块

FlashLib 还提供了一个非常实用的 flashlib.info 子模块。它能在纯 CPU 环境下,以 约 5 微秒 的速度预测任意算子的运行时间、FLOPs 和显存占用。这意味着你可以在真正启动 GPU 任务之前就做好预算规划——这个小功能在工程实践中价值很大。

适合谁用?

如果你经常处理百万级甚至更大规模的数据集,需要用聚类、降维、近邻搜索等经典算法,但又不想为这些「传统 ML」任务搭建复杂的 GPU 流水线,FlashLib 是一个简洁高效的选择。项目目前 360+ Star,正在快速迭代中。

参考来源

🔧 在线开发者工具 — JSON格式化 · Base64 · UUID生成 · 正则测试 等80+免费工具
🔧 在线开发者工具 — JSON格式化 · Base64 · UUID生成 · 正则测试 等80+免费工具