DeepSeek 的含金量还在上升

大家好啊,我是董董灿。

最近 DeepSeek 越来越火了。

网上有很多针对 DeepSeek 的推理测评,除此之外,也有很多人从技术的角度来探讨 DeepSeek 带给行业的影响。

比如今天就看到了一篇文章,探讨 DeepSeek 在使用 GPU 进行模型训练和推理时,绕过了 CUDA 编程。

难道 CUDA 的护城河不在了?

在这里插入图片描述

针对这个问题我想聊一聊,因为 AI 编译器也正好是我的专业。

CUDA 编程之所以说是英伟达软件生态的护城河,原因是英伟达的编译器对 CUDA 语言做了很多优化和适配,使 CUDA 编写的程序可以非常容易且高效的运行在 GPU 芯片上。

这其中,CUDA 语法并不是核心,编译 CUDA 语言的编译器才是。

就像是 Gcc/Clang 等编译器一样。

你可以很容易的用 C 语言写出一段逻辑,然后在很多后端硬件(比如 x86 架构,ARM 架构等等)上运行,并且性能还不错。

CUDA 也是一样的,它本身也是一种类 C 语言的“高级语言”,说它高级是相对于底层汇编而言的,而非真正的高级语言。

利用 CUDA 写好的程序经过英伟达的编译器编译完成后,可以得到汇编语言,进而转换为机器码在英伟达的 GPU 上运行。

这些机器码程序可以有非常不错的性能,而且有很强的移植性。

这一切都是英伟达的编译器自动优化的结果。

而 DeepSeek 绕过了 CUDA 编程,直接手写了汇编代码,这确实需要非常强的技术功底才能实现。

相当于手写汇编代替了编译器的工作。

这样做的好处就是可以自己控制 GPU 的各种资源,比如寄存器和内存,而坏处就是难度高,代码可维护性差,并且不易移植。

不易移植也就是说,在 H100 上编写的汇编代码,在 A100 上可能性能非常差甚至跑不起来。

很多公司在追求性能的时候都会手写汇编。

之前就有过某厂家为了将自己的产品打响,用汇编手写了一整个 AI 模型,效果也是非常好,但就是刚才说的那个问题,难以移植。

会这么做的公司,一方面要有技术积累,另一方面都在追求极致的性能。

DeepSeek 也不例外,但很显然 DeepSeek 有类似的技术积累。

幻方量化交易的高性能计算或许为此提供了很多技术支持。

也难怪 DeepSeek 都快火出圈了。

但虽然如此, CUDA 的护城河仍然存在,因为并不是所有的公司都能做到手写汇编,这里的技术壁垒还是挺高的。

要想真正打破 CUDA 护城河,需要重新定义和建立新的芯片架构和编程范式,这一点在目前的情况下还是挺难的。

即使手写的汇编,也依然在 GPU 的定义框架内运行,依然没有跳开英伟达。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/69214.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

tcp/ip网络协议,tcp/ip网络协议栈

TCP/IP网络协议和TCP/IP网络协议栈是互联网通信的基石,它们定义了电子设备如何连入因特网以及数据如何在它们之间传输的标准。以下是对TCP/IP网络协议和TCP/IP网络协议栈的详细解释: 一、TCP/IP网络协议 TCP/IP(Transmission Control Proto…

深入剖析 Bitmap 数据结构:原理、应用与优化策略

深入理解 Bitmap 数据结构 一、引言 在计算机科学领域,数据的高效存储和快速处理一直是核心问题。随着数据量的不断增长,如何用最少的空间和最快的速度来表示和操作数据变得至关重要。Bitmap(位图)作为一种简洁而强大的数据结构…

解锁C#数据校验:从基础到实战的进阶之路

一、引言:数据校验为何如此重要? 在软件开发的广袤领域中,数据校验宛如一座坚固的堡垒,守护着系统的稳定与安全。它是确保数据质量的关键防线,能有效避免错误数据的流入,进而提升系统的整体性能和可靠性。…

【后端开发】系统设计101——通信协议,数据库与缓存,架构模式,微服务架构,支付系统(36张图详解)

【后端开发】系统设计101——通信协议,数据库与缓存,架构模式,微服务架构,支付系统(36张图) 文章目录 1、通信协议通信协议REST API 对比 GraphQL(前端-web服务)grpc如何工作&#x…

DS图(中)(19)

文章目录 前言一、图的遍历广度优先遍历深度优先遍历 二、最小生成树Kruskal算法Prim算法两种方法对比 总结 前言 承上启下,我们来学习下图的中篇!!! 一、图的遍历 图的遍历指的是遍历图中的顶点,主要有 广度优先遍历 …

双系统共用一个蓝牙鼠标

前言 由于蓝牙鼠标每次只能配置一个系统,每次切换系统后都需要重新配对,很麻烦,双系统共用一个鼠标原理就是通过windows注册表中找到鼠标每次生成的mac地址以及配置,将其转移到linux上。 解决 1. 首先进入linux系统 进行蓝牙鼠…

DeepSeek 发布多模态 Janus-Pro

DeepSeek在接连发布大语言模型V3,推理模型R1之后,DeepSeek随后又发布两款多模态框架:Janus-Pro 与 JanusFlow ,引领多模态模型新时代! 而且依然是保持了一贯的风格,保持了完全开源,今天我们来看…

【QT笔记】使用QScrollArea实现多行文本样式显示

目录 一、QScrollArea 的基本概念 二、demo代码 三、实现效果 1、页面空间足够,无滚动条时显示效果 2、有滚动条时显示效果 一、QScrollArea 的基本概念 QScrollArea 是 Qt 框架中用于提供一个滚动条区域,允许用户滚动查看比当前可视区域更大的内容…

达梦数据库从单主模式转换为主备模式

目录标题 达梦数据库单主转主备配置笔记前期准备服务器环境数据库安装磁盘空间 流程流程图说明 详细步骤1. 检查主库归档模式2. 配置主库配置文件dm.ini 文件dmmal.ini 文件dmarch.ini 文件 3. 备份主库数据库4. 备库配置新建备库数据库配置备库配置文件dm.ini 文件复制主库的 …

使用C#开发一款通用数据库管理工具

由于经常使用各种数据库,笔者自己动手丰衣足食,使用C#开发了一款通用数据库管理工具,支持Mysql、Oracle、Sqlite、SQL Server等数据库的表、视图、存储过程、函数管理功能,并支持导入导出、数据字典生成、拖拽式跨机器跨库数据一键…

vue2-给data动态添加属性

vue2-给data动态添加属性 1. 问题的来源 在VUe2中(VUE3中使用了proxy,及时动态添加也能实现响应式),如果我们动态给data添加一个属性,会发现视图没有同步更新举个例子我们通过v-for遍历data中的一个属性list&#xf…

Github 2025-01-31Java开源项目日报 Top10

根据Github Trendings的统计,今日(2025-01-31统计)共有10个项目上榜。根据开发语言中项目的数量,汇总情况如下: 开发语言项目数量Java项目10C项目1Kotlin项目1Bazel:快速、可扩展的多语言构建系统 创建周期:3564 天开发语言:Java协议类型:Apache License 2.0Star数量:2…

w193基于Spring Boot的秒杀系统设计与实现

🙊作者简介:多年一线开发工作经验,原创团队,分享技术代码帮助学生学习,独立完成自己的网站项目。 代码可以查看文章末尾⬇️联系方式获取,记得注明来意哦~🌹赠送计算机毕业设计600个选题excel文…

DeepSeek各版本说明与优缺点分析

DeepSeek各版本说明与优缺点分析 DeepSeek是最近人工智能领域备受瞩目的一个语言模型系列,其在不同版本的发布过程中,逐步加强了对多种任务的处理能力。本文将详细介绍DeepSeek的各版本,从版本的发布时间、特点、优势以及不足之处&#xff0…

JDK17主要特性

JDK 17,也被称为Java 17或Java Platform, Standard Edition 17,是Java编程语言的第十七个主要版本,由Oracle公司在2021年9月发布。Java 17是一个长期支持(LTS,Long-Term Support)版本,这意味着它…

git 项目的更新

更新项目 当自己的本地项目与 远程的github 的仓库已经建立远程连接时&#xff0c; 则直接按照下面的步骤&#xff0c; 将本地的项目代码更新到远程仓库。 # Stage the resolved file git add README.md <file1> <file2># To stage all changes: git add .# Comm…

OpenCV:特征检测总结

目录 一、什么是特征检测&#xff1f; 二、OpenCV 中的常见特征检测方法 1. Harris 角点检测 2. Shi-Tomasi 角点检测 3. Canny 边缘检测 4. SIFT&#xff08;尺度不变特征变换&#xff09; 5. ORB 三、特征检测的应用场景 1. 图像匹配 2. 运动检测 3. 自动驾驶 4.…

windows版的docker如何使用宿主机的GPU

windows版的docker使用宿主机的GPU的命令 命令如下 docker run -it --nethost --gpus all --name 容器名 -e NVIDIA_DRIVER_CAPABILITIEScompute,utility -e NVIDIA_VISIBLE_DEVICESall 镜像名效果 (transformer) rootdocker-desktop:/# python Python 3.9.0 (default, Nov 15 …

Zabbix SQL注入漏洞CVE-2024-42327修复建议

近期&#xff0c;Zabbix官方修复了Zabbix SQL注入漏洞(CVE-2024-42327)。利用该漏洞&#xff0c;具有API访问权限的用户可越权访问高权限用户敏感信息以及执行恶意SQL语句。目前该漏洞技术细节与PoC已在互联网上公开。 一、漏洞情况分析 Zabbix 是一款开源的网络监控和报警系统…

neo4j-在Linux中安装neo4j

目录 切换jdk 安装neo4j 配置neo4j以便其他电脑可以访问 切换jdk 因为我安装的jdk是1.8版本的&#xff0c;而我安装的neo4j版本为5.15,Neo4j Community 5.15.0 不支持 Java 1.8&#xff0c;它要求 Java 17 或更高版本。 所以我需要升级Java到17 安装 OpenJDK 17 sudo yu…