BLIS 2.0-rc1发布:高性能计算库的重大升级
BLIS(BLAS-like Library Instantiation Software)是一个开源的高性能计算库,专门为线性代数运算提供优化实现。作为BLAS(Basic Linear Algebra Subprograms)的替代品,BLIS通过模块化设计和高度优化的内核,在各种硬件平台上实现了卓越的性能。最新发布的BLIS 2.0-rc1版本带来了多项重大改进和新功能,标志着该项目的一个重要里程碑。
核心框架的重大革新
BLIS 2.0-rc1引入了"插件"系统,这是本次更新的最显著特性之一。这个创新设计允许用户在BLIS源代码树之外创建插件,即使使用的是二进制分发的BLIS版本。通过插件机制,用户可以注册自定义的内核函数,这些内核将由BLIS构建系统为所有配置的架构进行编译。更令人兴奋的是,用户提供的内核可以参与基于实际硬件的运行时内核选择过程。
另一个重要改进是新增的API,它允许用户修改默认的"控制树"数据结构。控制树定义了实现BLAS level-3操作(如gemm或syrk)的具体算法步骤。用户可以从预定义的控制树开始,修改它以创建自定义操作,包括更改打包和计算的内核、关联的块大小,以及提供额外的参数或数据。
混合精度计算的全面支持
BLIS 2.0-rc1在所有level-3 BLAS操作(除trsm外)中实现了全面的混合精度和混合域计算支持。A、B和C矩阵,以及alpha和beta标量,可以以任何支持的数据类型(当前为单/双精度和实数/复数域)提供。此外,通过C矩阵的obj_t结构可以设置计算精度,控制内部计算的实际执行方式。
底层架构的优化与改进
新版本引入了"level-0"宏后端,为实现参考内核和正确的混合类型计算提供了基础语言支持。这个后端特别支持全数据类型灵活性,包括"计算"数据类型(例如输入/输出使用双精度,计算使用单精度),以及完全正确的混合域计算和操作(如scal2v)的安全就地使用。
在兼容性方面,BLIS 2.0-rc1增加了ScaLAPACK兼容模式,解决了某些冲突的BLAS定义问题。同时修复了Python脚本中的字符串转义问题,提高了与Python 3.12+的兼容性。还新增了用户定义宏BLIS_ENABLE_STD_COMPLEX,在C++代码中使用std::complex类型定义。
内核层面的重要修复与增强
本次更新修复了haswell架构gemmsup内核中的越界读取错误,以及piledriver架构复数域gemm内核的问题。内核、块大小和偏好查找函数现在使用siz_t而非特定枚举类型。打包微内核和计算微内核(gemm和gemmtrsm)现在接收全局矩阵的偏移量,后者通过auxinfo_t结构传递。
特别值得注意的是,单独的"MRxk"和"NRxk"打包内核已合并为一个通用打包内核。新的打包内核可以打包任何大小的微面板,但可以针对特定形状进行优化。还增加了针对矩阵对角线部分的显式打包内核,以及某些混合域/1m情况的处理。
构建与测试系统的改进
构建系统方面,cblas.h文件现在在blis.h之后立即"扁平化"(如果启用),而不是在构建过程的后期。配置脚本经过全面改进,现在支持在CC/CXX中使用空格。同时增强了对BLIS或插件中C++源文件的支持。
测试系统现在允许使用"默认"诱导方法,而不是强制使用原生或1m操作。测试套件在请求时会测试所有可能的类型组合。改进了make check-blis及相关目标中问题的检测能力。CI测试基础设施已迁移至CircleCI。
文档完善与知识传递
新版本增加了关于插件系统和通过修改BLIS控制树创建自定义操作的文档。更新了README.md中的BLIS下载说明和RELEASING中的维护者指南。加宽了代码示例中的打印格式,以避免结果误解。
BLIS 2.0-rc1的这些改进不仅提升了库的功能性和灵活性,也为高性能计算社区提供了更强大的工具。通过插件系统和控制树API,研究人员和开发者可以更轻松地实现和测试新的算法优化,而全面的混合精度支持则为各种数值计算场景提供了更大的灵活性。这些进步共同推动BLIS向着成为更通用、更高效的高性能计算库迈进。
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00- DDeepSeek-OCRDeepSeek-OCR是一款以大语言模型为核心的开源工具,从LLM视角出发,探索视觉文本压缩的极限。Python00
MiniCPM-V-4_5MiniCPM-V 4.5 是 MiniCPM-V 系列中最新且功能最强的模型。该模型基于 Qwen3-8B 和 SigLIP2-400M 构建,总参数量为 80 亿。与之前的 MiniCPM-V 和 MiniCPM-o 模型相比,它在性能上有显著提升,并引入了新的实用功能Python00
HunyuanWorld-Mirror混元3D世界重建模型,支持多模态先验注入和多任务统一输出Python00
AI内容魔方AI内容专区,汇集全球AI开源项目,集结模块、可组合的内容,致力于分享、交流。03
Spark-Scilit-X1-13B科大讯飞Spark Scilit-X1-13B基于最新一代科大讯飞基础模型,并针对源自科学文献的多项核心任务进行了训练。作为一款专为学术研究场景打造的大型语言模型,它在论文辅助阅读、学术翻译、英语润色和评论生成等方面均表现出色,旨在为研究人员、教师和学生提供高效、精准的智能辅助。Python00
GOT-OCR-2.0-hf阶跃星辰StepFun推出的GOT-OCR-2.0-hf是一款强大的多语言OCR开源模型,支持从普通文档到复杂场景的文字识别。它能精准处理表格、图表、数学公式、几何图形甚至乐谱等特殊内容,输出结果可通过第三方工具渲染成多种格式。模型支持1024×1024高分辨率输入,具备多页批量处理、动态分块识别和交互式区域选择等创新功能,用户可通过坐标或颜色指定识别区域。基于Apache 2.0协议开源,提供Hugging Face演示和完整代码,适用于学术研究到工业应用的广泛场景,为OCR领域带来突破性解决方案。00- HHowToCook程序员在家做饭方法指南。Programmer's guide about how to cook at home (Chinese only).Dockerfile014
Spark-Chemistry-X1-13B科大讯飞星火化学-X1-13B (iFLYTEK Spark Chemistry-X1-13B) 是一款专为化学领域优化的大语言模型。它由星火-X1 (Spark-X1) 基础模型微调而来,在化学知识问答、分子性质预测、化学名称转换和科学推理方面展现出强大的能力,同时保持了强大的通用语言理解与生成能力。Python00- PpathwayPathway is an open framework for high-throughput and low-latency real-time data processing.Python00