万本电子书0元读

万本电子书0元读

顶部广告

高性能计算算法引擎:线性代数与异构计算的融合电子书

【直算力核心,通理论到芯片的路】本书从线性代数基础出发,系统阐释其与计算机体系结构(CPU、GPGPU、分布式)的深度关联,构建从数学原理到芯片级算法优化的完整知识图谱。 【深剖析BLAS生态,覆盖主流硬件平台】全面详解高性能计算基石——BLAS库,涵盖OpenBLAS、cuBLAS/CUTLASS、OpenCL/CLBlast、Spark MLlib BLAS等核心实现,助读者掌握跨CPU、GPU及分布式集群的优化实践。

售       价:¥

纸质售价:¥78.80购买纸书

0人正在读 | 0人评论 6.7

作       者:赵先明、邹晓虎、刘钧文、夏津、窦兴林 著

出  版  社:人民邮电出版社有限公司

出版时间:2025-12-01

字       数:20.3万

所属分类: 科技 > 计算机/网络 > 计算机教材

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(条)
  • 读书简介
  • 目录
  • 累计评论(条)
本书主要探讨线性代数与高性能计算之间的紧密联系,并着重介绍在芯片架构算法优化中如何应用BLAS库。本书分为四部分,共12章。第一部分从线性代数的基础知识始介绍,逐步深介绍矩阵运算、向量空间、线性变换以及特征值和特征向量等核心概念;第二部分主要介绍计算机体系结构及其衍生出来的多种处理芯片(CPU、GPGPU等)和分布式计算;第三部分主要介绍高性能计算数学库BLAS的基本概念和基础的实现思路,以及高性能计算数学库的实现框架,如OpenBLAS、CUDA(及其BLAS库,包括cuBLAS、CUTLASS)、OpenCL、CLBlast、Spark和Spark MLlib BLAS;第四部分主要介绍BLAS库在人工智能方面的应用。 本书适合对线性代数和芯片架构算法优化感兴趣的读者阅读。无论是计算机相关专业的学生、高性能计算爱好者、算法工程师,还是希望高性能计算行业的人士,都能从中找到适合自己的学习内容。<br/>【推荐语】<br/>【直算力核心,通理论到芯片的路】本书从线性代数基础出发,系统阐释其与计算机体系结构(CPU、GPGPU、分布式)的深度关联,构建从数学原理到芯片级算法优化的完整知识图谱。 【深剖析BLAS生态,覆盖主流硬件平台】全面详解高性能计算基石——BLAS库,涵盖OpenBLAS、cuBLAS/CUTLASS、OpenCL/CLBlast、Spark MLlib BLAS等核心实现,助读者掌握跨CPU、GPU及分布式集群的优化实践。 【聚焦异构计算,解锁AI算力瓶颈】紧密结合人工智能时代对算力的迫切需求,深讲解如何在不同芯片架构(包括国产源GPGPU项目)上优化线性代数计算,为AI模型训练与推理提供底层加速方案。 【产业界与学术界双重视角,兼具深度与广度】作者团队兼具研发实战与理论背景,内容不仅涵盖经典算法与架构分析,更融对行业前沿(如后摩尔时代算力挑战)的思考,得到领域内院士及产业专家的联袂推荐。 【实战导向,提供从方法到案例的完整指引】通过矩阵乘法优化等具体案例,逐步展示算法优化方法(如RoofLine模型、访存优化、并行策略),并提供配套彩色插图与思维导图,降低高性能计算门与实践门槛。<br/>【作者】<br/>赵先明,本硕博毕业于哈尔滨工业大学。曾任中兴通讯股份有限公司 CTO、董事长和总裁。作为中兴通讯移动通信领域的主要技术负责人之一,参与了 2G 到 5G 相关技术的研发和产业化全过程。共获国家级奖项8项,省部级奖项 12 项。 邹晓虎,哈尔滨工业大学管理学博士、材料学博士后,哈尔滨工业大学兼职教授;具有深厚的热能工程、无机非金属材料学专业技术知识,在国家级刊物公发表文章 15 篇,拥有发明专利 24 项;在政、产、学、研、金贸等诸多领域任职多年。 刘钧文,北京红山微电子技术有限公司基础线性代数算法库负责人,京东城市时空数据引擎(JUST)创始人之一,算法工程师。中国计算机学会(CCF)类数据库专业委员会通讯委员。著有《Calcite 数据管理实战》《GeoTools 地理信息系统发》《GeoMesa 时空数据管理》。 夏津,毕业于哈尔滨工业大学,主要从事高性能计算和 A 芯片领域的研究,从事相关工作5年。具备A模型部署的实战经验,曾为多个源 A 推理框架贡献代码。 窦兴林,毕业于西安电子科技大学,长期从事半导体芯片的设计与封装工作。曾在广东晶科电子股份有限公司、大唐电信科技股份有限公司、中移物联网有限公司等业内领先企业任职,积累了丰富的芯片行业经验。<br/>
目录展开

版 权

内容提要

推荐序1

推荐序2

前 言

资源与支持

第一部分 线性代数前置知识

第1章 基础线性代数算法简介

1.1 高性能计算

1.2 高性能计算数学库

1.2.1 高性能计算数学库简介

1.2.2 高性能计算数学库分类

1.3 基础线性代数算法

1.3.1 稠密矩阵和稀疏矩阵

1.3.2 针对稠密矩阵的线性代数算法

1.3.3 针对稀疏矩阵的线性代数算法

1.4 本章小结

第2章 数学基础

2.1 线性代数的基本概念

2.1.1 向量和向量空间

2.1.2 行列式和矩阵

2.1.3 线性方程组

2.1.4 矩阵的秩

2.2 矩阵乘法

2.2.1 概述

2.2.2 基于内积和外积的矩阵乘法

2.2.3 矩阵乘法切分逻辑

2.2.4 蛋糕模型

2.2.5 Strassen算法

2.3 多项式方程组求解

2.4 本章小结

第二部分 计算机体系结构和算法优化

第3章 计算机体系结构

3.1 冯·诺依曼架构

3.2 存储系统

3.2.1 主存(主存储器)

3.2.2 缓存

3.2.3 主存和缓存之间的映射关系

3.2.4 Bank冲突问题

3.3 控制系统

3.3.1 指令控制器

3.3.2 时序控制器

3.3.3 总线控制器

3.4 通信系统

3.4.1 总线

3.4.2 PCIe标准

3.4.3 NVLink标准

3.5 服务器系统架构

3.5.1 SMP架构

3.5.2 NUMA架构

3.5.3 MPP架构

3.6 本章小结

第4章 CPU

4.1 CPU概述

4.2 CPU向量指令系统

4.2.1 X86架构

4.2.2 ARM架构

4.3 CPU算法优化方法

4.3.1 CPU的理论极限和算法的计算访存比

4.3.2 RoofLine模型

4.4 实战:在CPU上优化矩阵乘法

4.4.1 优化一:根据NEON指令的粒度,对矩阵进行第一次分块

4.4.2 优化二:扩大计算规模,提高计算访存比

4.4.3 优化三:访存优化,提高计算访存比

4.5 本章小结

第5章 GPGPU

5.1 GPGPU概述

5.2 GPGPU架构介绍

5.2.1 GPGPU架构概述

5.2.2 运算器

5.2.3 控制器

5.2.4 存储器

5.2.5 GPGPU与CPU的对比

5.3 开源GPGPU项目——承影GPGPU

5.4 并行计算算法优化方法

5.4.1 GPU的理论极限和算法的计算访存比

5.4.2 优化方法论

5.4.3 实战:在GPU上优化一个矩阵乘法

5.5 本章小结

第6章 分布式计算

6.1 分布式计算概述

6.2 大数据时代分布式计算架构

6.2.1 MapReduce架构

6.2.2 DAG架构

6.3 分布式计算算法优化方法

6.3.1 逻辑优化

6.3.2 物理优化

6.3.3 数据优化

6.4 本章小结

第三部分 BLAS 库与多种硬件平台

第7章 高性能BLAS库

7.1 BLAS概述

7.1.1 BLAS发展历史

7.1.2 BLAS特性

7.1.3 BLAS生态系统

7.2 BLAS函数的命名规范

7.3 各级别BLAS函数

7.3.1 Level 1函数

7.3.2 Level 2函数

7.3.3 Level 3函数

7.4 BLAS函数

7.4.1 BLAS函数的分类

7.4.2 BLAS函数之间的内部推导关系

7.5 本章小结

第8章 OpenBLAS

8.1 OpenBLAS概述

8.1.1 OpenBLAS与张先轶

8.1.2 OpenBLAS的前世今生

8.1.3 OpenBLAS的现状

8.2 OpenBLAS实战

8.2.1 OpenBLAS的安装方法

8.2.2 OpenBLAS的使用方法

8.3 OpenBLAS架构设计

8.3.1 目录结构

8.3.2 软件调用架构

8.4 OpenBLAS GEMM算法详解

8.5 本章小结

第9章 CUDA、cuBLAS和CUTLASS

9.1 CUDA概述

9.1.1 NVIDIA简介

9.1.2 NVIDIA GPU硬件架构

9.1.3 CUDA简介

9.2 CUDA架构与实战

9.2.1 CUDA基本概念

9.2.2 CUDA硬件架构

9.2.3 CUDA内存模型

9.2.4 CUDA执行流程

9.2.5 CUDA性能优化

9.2.6 CUDA实战

9.3 cuBLAS概述

9.4 cuBLAS实战

9.5 CUTLASS概述

9.6 CUTLASS GEMM算法详解

9.6.1 使用方法

9.6.2 矩阵分块策略

9.6.3 整体计算过程

9.6.4 主机端前处理

9.6.5 设备端前处理

9.6.6 设备端核心计算

9.6.7 设备端后处理

9.7 本章小结

第10章 OpenCL和CLBlast

10.1 OpenCL概述

10.2 OpenCL架构设计

10.3 OpenCL编程模型

10.4 OpenCL存储结构

10.4.1 存储分区

10.4.2 存储对象

10.4.3 共享虚拟内存

10.5 OpenCL实战

10.6 CLBlast概述

10.6.1 OpenCL相关的BLAS库

10.6.2 CLBlast特性

10.7 CLBlast实战

10.8 CLBlast GEMM算法详解

10.8.1 函数定义

10.8.2 非直接GEMM算法执行过程

10.9 本章小结

第11章 Spark和Spark MLlib BLAS

11.1 Spark和Spark SQL概述

11.1.1 Spark概述

11.1.2 Spark SQL概述

11.2 Spark MLlib BLAS详解

11.2.1 Spark MLlib概述

11.2.2 对矩阵和向量的支持

11.2.3 BLAS函数的使用

11.2.4 分布式矩阵

11.2.5 对UDT的支持

11.2.6 Spark SQL的使用

11.3 Spark MLlib BLAS GEMM算法详解

11.3.1 Spark引用的BLAS库

11.3.2 分布式矩阵乘法算法

11.4 本章小结

第四部分 BLAS库与人工智能

第12章 BLAS库在人工智能方面的应用

12.1 卷积神经网络的计算流程

12.1.1 卷积层

12.1.2 全连接层

12.1.3 池化层

12.1.4 上采样层

12.1.5 连接层

12.1.6 其他网络层

12.2 卷积神经网络的并行加速

12.2.1 层内并行

12.2.2 层间流水

12.3 卷积神经网络加速实战

12.3.1 cuDNN库概述

12.3.2 cuDNN库安装

12.3.3 cuDNN库使用方法

12.4 本章小结

累计评论(条) 个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部