首页/新闻资讯/正文详情

Atlas 300V 24G部署YOLO实战:从硬件认知到推理调优全流程

发布时间:2026/9/25 8:20:16 来源:云帆数科 栏目:资讯中心
Atlas 300V 24G部署YOLO实战:从硬件认知到推理调优全流程
最近后台私信里问得最多的一个东西就是Atlas 300V 24G。问来问去其实就两句话这卡到底是不是运算加速卡能不能用来部署YOLO我的回答一直很直接能而且就是干这个的。Atlas 300V 24G是华为昇腾阵营里一块非常典型的边缘推理加速卡常见的使用场景就是把训练好的YOLO系列模型从服务器搬到边端做实时目标检测。这篇文章我不想写成官方文档式的功能介绍而是把它当成一份完整的实操记录从硬件认知、环境搭建、模型转换到推理代码、性能调优、问题排查把一条链路走完。不管你是第一次碰昇腾生态还是已经在CANN里踩过几轮坑这篇都值得花十分钟看一遍。我这里用的主力卡就是Atlas 300V 24G系统是Ubuntu 20.04CANN版本在8.0系列模型以YOLOv5s为主YOLOv8的流程也顺便提一下。1. 先弄清这张卡Atlas 300V 24G的硬件定位与选型逻辑1.1 一张“运算加速卡”的自我修养很多人第一次看到“Atlas 300V 24G”这个命名会下意识把它和NVIDIA的显卡对应起来想着是不是就是“华为版RTX显卡”。这其实是个不小的误区。Atlas 300V 24G是一款NPU神经网络处理单元推理加速卡它的核心目标是搞定神经网络推理任务而不是像GPU那样兼顾图形渲染、通用计算、训练加速等一堆事情。我手上的这张卡拆开来看大概是这么个配置双Ascend 310P处理器24GB内存PCIe Gen4接口插在普通x86服务器或边缘小主机上都能用。它的优势是单位功耗下能跑出非常可观的INT8算力典型功耗控制得比较好边缘场景下对电源和散热的要求比大GPU友好得多。官方标称的INT8算力在百T量级具体数字不同批次会有差异以你实际拿到的卡和官方文档为准。换句话说这张卡就是典型的“算力用在刀刃上”——不搞花活专注推理。你要拿它做常规的矩阵运算、图形渲染它反而帮不上忙但你要跑YOLO检测、ResNet分类、OCR识别这类经过转换和量化后的模型它的小身板能爆发出很高的吞吐。1.2 它和GPU到底差在哪采购前你想清楚这三点如果你正在纠结“到底买GPU还是买Atlas 300V”我的建议是先看三个维度精度的使用习惯。GPU方案里大家习惯用FP16甚至FP32跑推理而昇腾卡更强调INT8量化后的性能和成本。如果你的模型对量化敏感或者团队没有精力做量化那昇腾卡的优势就发挥不出来。软件生态的成熟度。GPU有CUDA那套非常成熟的生态PyTorch转TensorRT的路径你已经很熟了。昇腾这边走的是CANN ATC OM这条链路虽然现在支持PyTorch、ONNX、MindSpore多种入口但中间过程还是有一些特有的坑团队需要一定的学习成本。供应链和现场条件。昇腾卡在一些政企项目、边缘盒子项目里是硬性指定或者供应更稳定的选择而且功耗低、尺寸紧凑不需要外接独立供电这些在边缘机房和工控机场景里都是实打实的优势。我个人的选型经验是如果项目是纯云端、性能要求高、团队只熟悉CUDA那就老老实实用GPU如果项目要落地到边缘设备或者供应链要求必须用国产化方案那Atlas 300V 24G这个级别的卡是非常合适的选择尤其是大批量部署时单卡成本可控功耗账也算得过来。1.3 什么时候该选Atlas 300V而不是GPU举一个很常见的场景工厂里二十条产线每条产线部署一个检测工位每个工位一台小主机接入一路或者两路摄像头跑YOLOv5s做外观缺陷检测。这种场景如果每台都上大GPU功耗、体积、成本全部爆炸。而Atlas 300V 24G插在普通工控机上被动散热或者小风扇就行功耗低单路视频的推理延迟能压得非常低还能顺便把多路视频跑起来。当然这张卡也不是没有短板。它毕竟定位推理如果你希望在同一台机器上做模型训练或者反复迭代调参那它并不是最优解。我习惯的做法是训练阶段在GPU服务器上完成把训练好的权重导出成通用格式再拿到Atlas卡上做转换和部署。这种“训练分离、推理下沉”的架构在工业落地里非常实用。2. 开工前的技术准备驱动、CANN与容器工具链2.1 一条链路看懂昇腾推理的完整流程在GPU上你习惯了PyTorch直接转TensorRT或者直接CudaGraph跑。昇腾生态的流程大概是这样你有训练好的模型权重比如YOLOv5的.pt文件先把它导出成ONNX再用工具链把ONNX转换成昇腾推理引擎能直接执行的.om离线模型最后在目标设备上写推理程序加载.om执行。为什么中间一定要有OM这一步因为昇腾的芯片上跑的不是通用指令而是高度定制化的AI计算单元它需要一个专门编译器把网络结构映射成硬件指令流。ATC工具就是这个编译器。转换过程中它会做算子选择、内存规划、图优化甚至能做权重的重排。你可以把它粗暴类比成“C语言编译成机器码”.om就是可执行的“二进制”。这个流程相比GPU时代多了一步“编译”但换来的是运行时的高效率。只要转换成功推理阶段的性能通常是不差的。2.2 驱动、固件和CANN版本到底怎么配这一节是几乎每个新手都会懵的地方。显卡的驱动大家见多了但昇腾卡涉及的东西要多两样固件和CANN Toolkit。三者的关系大概是固件烧在卡上的底层系统管芯片的启动和基础功能驱动让操作系统能识别和访问这张卡CANN昇腾计算平台的开发套件类似CUDA工具包提供ATC、推理运行库、算子库等三者的版本必须匹配否则很容易出现设备识别不到、ATC转换报错、推理运行崩溃这一类问题。官方提供了一套版本配套表装之前一定要先查清楚。我目前环境用的是CANN 8.0.RC1对应的驱动和固件是配套发布安装顺序是驱动 - 固件 - CANN Toolkit - CANN Kernels。提示安装之前最好把旧版本卸载干净。昇腾的安装脚本会往系统里写不少环境变量和软链接卸载不干净再装新版经常会出现一些莫名其妙的库文件冲突问题。我以前偷懒跳过这步结果折腾了一下午。安装完成后用npu-smi info命令验证卡是否被识别。如果能看到卡的型号、内存、芯片温度这些信息说明驱动和固件基本没问题了。2.3 推荐用Docker镜像而不是裸机装环境昇腾官方提供了带CANN的容器镜像我强烈建议直接用容器部署。原因很简单CANN版本迭代快项目一多每台机器上的版本容易冲突容器化之后版本隔离删掉重来都方便。启动容器的命令大概是这样docker run -it --name atlas_yolo \ --device/dev/davinci0 \ --device/dev/davinci_manager \ --device/dev/hisi_hdc \ -v /usr/local/Ascend/driver:/usr/local/Ascend/driver \ -v /etc/ascend_install.info:/etc/ascend_install.info \ -v $HOME/project:/workspace \ --network host \ ascend-env镜像:版本号需要挂载这些设备文件的原因是容器本身无法直接访问宿主机的NPU设备必须把/dev/davinci0这些设备节点映射进去。同时驱动信息也要共享给容器内使用。关于镜像的获取方式我一般是在有外网的机器上先拉取推到内网仓库再在目标环境里导入。这样能避免在部署现场因为网络问题卡壳。镜像里有完整的CANN环境包括ATC工具和Python推理库省去很多手工安装的时间。3. YOLO模型转换从PyTorch权重到离线om模型3.1 先导出ONNX绕开不少算子坑拿到一张Atlas卡之后最核心的事情就是把已经训练好的YOLO模型变成它能吃的东西。第一步是导出ONNX。以YOLOv5为例仓库里自带导出脚本python export.py --weights yolov5s.pt --include onnx --img-size 640 640导出时建议把输入尺寸固定下来。虽然可以搞动态分辨率但第一次跑通流程最好用静态shape。YOLOv8也类似用v8仓库的export脚本即可。导出完之后用onnxruntime先跑一遍确认ONNX模型本身没问题再进入ATC转换。注意这里我踩过一个大坑——导出ONNX时不要加Optimize和Simplifier之外的多余操作尤其不要用某些第三方库强行合并算子和裁剪图反而会导致ATC转换时报结构错误。ONNX只要干净清晰就行。3.2 ATC转换一条命令把ONNX变成omATC工具是昇腾工具链里的“编译器”官方文档里的命令参数很多但项目初期只需要掌握几个核心参数。一条基础的转换命令如下atc --modelyolov5s.onnx \ --framework5 \ --outputyolov5s \ --soc_versionAscend310P3 \ --input_shapeimages:1,3,640,640 \ --output_typeFP16 \ --loginfo这里解释一下几个关键参数framework5表示输入是ONNX模型soc_version要填成你的芯片对应型号Atlas 300V 24G一般是Ascend310P3具体可以用npu-smi或文档确认input_shape静态shape第一个维度是batch sizeoutput_typeFP16指模型权重和计算精度以FP16存储和计算主要为了推理加速命令执行成功后会生成yolov5s.om。如果转换过程没有报错恭喜硬骨头啃下来一大半了。3.3 图像预处理放不放到NPUAIPP的取舍很多人优化推理性能的第一反应是“是不是模型太慢”但实际很多时候瓶颈在预处理。图像读取、Resize、归一化、色彩空间转换如果全部在CPU上做会占用大量时间。昇腾卡提供了AIPPAI Preprocessing模块可以把预处理放到NPU上执行省掉CPU和NPU之间搬运原始图像数据的开销。AIPP需要写一个JSON配置文件指定色域转换、缩放、归一化等参数。一个给YOLOv5做RGB输入、BGR图像转换的AIPP配置片段大概是这样的{ aipp_op: { input_format: RGB888_U8, crop: false, load_start_pos_h: 0, load_start_pos_w: 0, src_image_size_w: 640, src_image_size_h: 640, csc_switch: true, rbuv_swap_switch: true, min_chn_0: 0, min_chn_1: 0, min_chn_2: 0, var_reci_chn_0: 0.00392156862745098, var_reci_chn_1: 0.00392156862745098, var_reci_chn_2: 0.00392156862745098 } }其中的var_reci参数对应1/255把像素值从0-255归一化到0-1。ATC转换时用--insert_op_conf参数把配置文件加进去。但我不建议第一次跑就开AIPP。先把预处理放在CPU端把全流程跑通确认推理结果正确再尝试AIPP优化。这样能把“模型转换问题”和“预处理问题”分开排查否则报错的时候你根本不知道是哪一环出了问题。3.4 转换失败怎么办高频算子问题的处理套路ATC转换失败是最常见的挫折点。报错信息通常指向某个算子不支持比如提示“Unsupported op”或者“The shape is not supported”。遇到这种问题我的处理顺序是这样的第一步确认CANN版本已经更新到较新版本。昇腾的算子库在持续更新老版本不支持的算子新版本可能早就支持了。 第二步去查昇腾社区提供的算子支持列表看有没有对应的替代算子。 第三步考虑修改模型结构。比如某些自定义模块里的算子昇腾不支持可以把它替换成等价的标准算子组合。拿YOLOv5举例大多数人会挂在Focus模块或者一些自定义的切片操作上。如果Focus算子有问题可以直接用卷积加切片的方式重写。 第四步实在不行把模型拆开在ONNX层面做图替换。这个操作比较硬核但很多时候是绕开算子不支持的钥匙。我遇到过一个印象深刻的case某个版本导出的YOLOv5 ONNX里有一个Gather算子在310P上的表现时好时坏换成CANN新版本之后彻底解决。所以遇到算子报错先别急着改代码先去升级CANN简单有效。4. 推理部署实战Python ACL接口写第一个YOLO推理程序4.1 ACL初始化与模型加载.om模型转换成功之后下一个环节是写推理程序。昇腾的Python推理主要走ACLAscend Computing Language接口。这个接口的风格和CUDA比较像需要先初始化设备、创建Context、创建Stream再加载模型。一段基础的初始化代码大概长这样import acl # 初始化 ret acl.init() ret acl.rt.set_device(0) # 创建上下文和流 context, ret acl.rt.create_context(0) stream, ret acl.rt.create_stream() # 加载离线模型 model_id, ret acl.mdl.load_from_file(yolov5s.om)注意ACL的很多接口都返回一个状态码虽然Python版本的接口有时候不会那么严格地抛异常但开发时最好每个ret都检查一下尤其是release环境否则出错后很难定位。4.2 输入输出内存管理数据搬运最容易出bugACL推理里最容易出错的地方是内存管理。模型输入需要在NPU侧申请独立内存把图像数据从CPU侧拷贝过去推理完成后从NPU侧拷贝回来。这个过程有点像用“指针”在做数据搬运一旦尺寸对不上轻则推理结果全错重则内存越界崩溃。核心流程是# 获取模型输入输出信息 input_desc acl.mdl.create_desc() acl.mdl.get_input_desc(model_id, 0, input_desc) input_size acl.mdl.get_input_size_by_index(model_id, 0) output_desc acl.mdl.create_desc() acl.mdl.get_output_desc(model_id, 0, output_desc) output_size acl.mdl.get_output_size_by_index(model_id, 0) # 申请device内存 input_ptr, ret acl.rt.malloc(input_size, acl.const.ACL_MEM_MALLOC_NORMAL_ONLY) output_ptr, ret acl.rt.malloc(output_size, acl.const.ACL_MEM_MALLOC_NORMAL_ONLY) # 把图像数据拷到device ret acl.rt.memcpy(input_ptr, input_size, input_data_ptr, input_size, acl.const.ACL_MEMCPY_HOST_TO_DEVICE) # 执行推理 ret acl.mdl.execute(model_id, [input_ptr], [output_ptr]) # 从device拷回CPU output_data acl.util.numpy_to_ptr(output_buffer) ret acl.rt.memcpy(output_buffer, output_size, output_ptr, output_size, acl.const.ACL_MEMCPY_DEVICE_TO_HOST)这里注意几点模型输入维度是[1,3,640,640]所以图像预处理完一定要保证维度顺序是CHW而且数据要连续内存。如果输入是uint8的图片需要先转成float32并按需归一化再转成bytes写进内存。推理完成后记得释放内存否则长时间运行时内存会持续上涨。4.3 后处理NMSCPU做还是NPU做YOLO的模型输出不是直接可用的检测框还需要解码和NMS。以YOLOv5s为例输出张量大小是[1, 25200, 85]其中85表示x、y、w、h、objectness和80个类别得分。要在这些候选框里选出最终的检测结果必须做非极大值抑制。这个后处理到底在CPU还是NPU做是性能调优的关键分岔路。我的建议是第一版先在CPU上用numpy或者opencv实现把整个链路跑通。比如先做一个阈值过滤去掉低置信度的框再做NMS用循环或者向量化实现。虽然Python后处理不快但胜在简单清晰能立刻验证模型转换是否正确。等到整体流程没问题了再考虑性能优化。NPU上虽然有一些算子支持NMS但封装的接口复杂而且一旦模型输出格式有变化调试成本不低。实际项目里很多团队就是CPU后处理只要输入的batch够大、流水线搭得好这部分也能被掩盖住。4.4 多路并发与动态Shape让推理卡真正吃饱单张卡只跑一个batch1的推理其实浪费了卡的算力。提高吞吐的核心手段是多路并发。在Atlas 300V 24G上我常用的两种方式第一种是动态batch。在ATC转换时指定动态batch范围atc --modelyolov5s.onnx \ --framework5 \ --outputyolov5s_dyn \ --soc_versionAscend310P3 \ --input_shapeimages:-1,3,640,640 \ --dynamic_batch_size1,2,4,8推理程序按当前排队数量动态决定batch大小把多路视频帧拼成一个大batch一次推理。这种方式对吞吐提升非常明显但要注意内存使用量会随batch成倍增长。第二种是多线程或者多进程推理。每路视频流分配一个线程每个线程维护独立的输入输出内存和Stream调用多线程执行。这个方案实现起来更直观也方便隔离某一路视频断流的问题。我的实测经验是对于YOLOv5s这样的小模型多路并发比单纯调模型精度更有效果。边缘设备上视频路数通常不多但每路又要保持实时性这里的关键是平衡延迟和吞吐。5. 实战中的坑高频问题与排障手册5.1 运行时报错的排查思路开发期间遇到的最常见的几个报错我整理成了一个排查速查表报错或现象可能原因处理办法模型加载失败返回错误码.om模型和CANN版本不匹配重新用当前CANN版本转换om推理结果全为0或乱码输入数据拷贝时shape或数据类型不对检查输入维度是否CHW类型是否为float32内存申请失败没有释放历史内存或设备内存耗尽检查是否有内存泄漏适当回收再申请ATC转换报算子不支持模型里用了当前CANN不支持的算子升级CANN或替换模型结构中的算子Python进程crash设备内存访问越界检查memcpy大小是否和模型输入输出尺寸一致这个表里的每一个我都实际遇到过尤其第一条曾浪费了我整整一天。原因很简单我稍微改了CANN版本但省事没重新转换om结果旧om在新版本驱动下加载失败。从那以后我养成了一个习惯改版本必重新转换模型。5.2 性能离预期差怎么办部署完成后性能不达预期是常态。不要一上来怀疑卡不行先拆时间。把一次推理从输入到输出的时间拆成预处理、H2D拷贝、模型执行、D2H拷贝、后处理五段逐段看哪个占比最高。我一般先用一个python装饰器给每段计时。通常发现的问题集中在两处预处理太慢。如果图片需要从CPU上的numpy转成bytes再拷贝开销会很大。解法是尽量用AIPP把预处理塞进NPU或者用多线程预处理流水线。模型执行时间波动大。如果模型推理时间漂移很严重看下是不是没有用动态batch导致小batch时算力没吃满或者内存碎片问题导致内存分配耗时高。性能优化的顺序一定是先跑通再测耗时再针对性优化绝对不要凭感觉乱调。我见过有同事一上来就改模型结构结果改了三天性能没变最后发现瓶颈在图像Resize用了一个极其低效的循环。5.3 系统环境与权限的隐性坑除了代码层面的问题系统环境里也有很多隐形的坑。最常见的是Docker容器内没有映射设备文件导致运行时报找不到设备还有普通用户权限不足而昇腾的接口默认要求有权限访问/dev/davinci*需要把用户加入正确的用户组。另外一个容易被忽视的问题是共享内存和系统句柄。长时间运行时如果代码里有内存泄漏或者句柄没释放最终会导致整个系统卡死。排查这类问题没有捷径需要定期用npu-smi watch查看显存占用用dmesg看内核日志发现异常及时处理。6. 实测参考与场景扩展6.1 一份可复现的实测记录参考值我在自己这台Atlas 300V 24G上用YOLOv5s输入640x640CANN 8.0.RC1做了大致的性能测试。需要提前说明的是这个结果受硬件版本、驱动、环境变量、后处理实现方式影响很大只能当参考不能用它和别人的环境硬比。配置单帧延迟ms说明FP16 batch110上下模型执行耗时不含预处理和后处理INT8 batch15到8量化后延迟明显下降FP16 batch4总吞吐提升明显多路视频场景推荐含CPU预处理后处理整体多2-4ms优化后可以用AIPP砍掉一部分从数值分布能看出INT8量化对性能提升幅度很大。如果业务允许建议认真考虑量化这条路。6.2 从“能跑”到“用得好”扩展方向把YOLO在Atlas上跑通只是起点。往深了做还有几个方向值得探索模型量化用昇腾的AMCT工具做PTQ或QAT量化把FP16模型压到INT8这是一条成熟的提性能路径。多模型并发一台机子上同时跑检测、分类、OCR等多个模型共用一张推理卡用Stream和任务优先级调度。使用ModelZoo和MxBase昇腾社区提供了很多现成模型样例和推理框架能省掉不少造轮子的时间。视频流对接把解码、缩放和推理串成一条流水线用FFmpeg做视频流接入再结合昇腾硬件解码能力做到真正的端到端实时分析。我在实际项目里的体会是Atlas 300V 24G这张卡最让人舒服的地方在于它没有把问题抛给你而是给了你一套完整工具链只要愿意花时间把链路摸熟它能跑出的性能和稳定性都配得上这个定位。如果你也准备拿这张卡部署YOLO建议一句别在环境安装阶段恋战容器化是捷径也别在第一次跑推理时追求极致性能先把一个框稳定画出来再慢慢从延迟曲线里找空间。踩过几轮坑之后你会发现昇腾这套东西并不难难的是过程中每个版本的对应关系和每段代码的内存管理这些东西只能靠一次次实操去记。

相关推荐

让Codex像安全工程师一样审代码:Cloudflare Security Audit Skill解析
让Codex像安全工程师一样审代码:Cloudflare Security Audit Skill解析

现在让任何一个主流编程代理去“审一遍代码安全”,它多半会给你交出一份看似全面的报告:SQL 注入、XSS、SSRF 列得整整齐齐,但仔细一看,全是模型对漏洞定义的通识复述,既没确认数据流是否真的从用户输入走到了危险函数… · 2026/9/25 8:20:16

Agent开发实战:用结构化技能库解决工具管理难题
Agent开发实战:用结构化技能库解决工具管理难题

做Agent开发这段时间,我踩得最深的坑,不是模型能力不够,而是"工具管理"这块烂摊子。业务方提需求很快,今天加个查天气的接口,明天补一个数据库查询的权限,后天再来一个导出报表的动作&#xff0c… · 2026/9/25 8:20:09

金融场景Agent工程化落地:从架构设计到安全合规的完整拆解
金融场景Agent工程化落地:从架构设计到安全合规的完整拆解

1. 金融场景下的 Agent 工程化落地:从“能跑”到“敢用”的完整拆解金融行业对自动化的态度一直很拧巴:一边是大量重复性极高的流程——对账、报表生成、合规检查、客户尽调、交易异常排查,另一边是对准确性、可追溯性、权限隔离近乎偏执的要… · 2026/9/25 8:20:09

ETSI EN 300 132-1 V2.1.1电源端口合规设计实战指南
ETSI EN 300 132-1 V2.1.1电源端口合规设计实战指南

简介:本资源为欧洲电信标准协会(ETSI)发布的正式标准文件《EN 300 132-1 V2.2.1(2019-03)》,聚焦信息和通信技术(ICT)设备交流电源接口的环境工程规范,面向ICT设备制造商… · 2026/9/25 8:53:20

有名的奢侈品名表回收品牌企业、服务不错的奢侈品名表回收企业、有名的奢侈品名表回收专业公司用户力荐
有名的奢侈品名表回收品牌企业、服务不错的奢侈品名表回收企业、有名的奢侈品名表回收专业公司用户力荐

有名专业的奢侈品名表回收,靠谱连锁品牌更安心很多想要出手闲置奢侈品名表的用户,都希望找到透明靠谱的专业平台,东莞市好岱贸易有限公司旗下品牌好岱中古汇,是一家深耕二手奢侈品回收行业的全国连锁直营平台,始终坚持… · 2026/9/25 8:53:14

Sinon sandbox.replace() 完全指南:安全替换对象属性并自动还原
Sinon sandbox.replace() 完全指南:安全替换对象属性并自动还原

测试开发工具 【免费下载链接】sinon Test spies, stubs and mocks for JavaScript. 项目地址: https://gitcode.com/gh_mirrors/si/sinon 点击查看 免费下载 Sinon 的 sandbox.replace() 用于在测试中临时替换对象上的任意属性(方法、字符串、数值乃至… · 2026/9/25 8:53:14

华为FTTR全光家庭网:光纤入室解决WiFi6卡顿与多终端抢带宽
华为FTTR全光家庭网:光纤入室解决WiFi6卡顿与多终端抢带宽

简介:本资源为华为FTTR全光家庭网络创新解决方案的完整技术白皮书PDF,面向通信工程师、宽带网络规划人员、智慧家庭方案集成商及运营商装维技术人员,聚焦解决大户型Wi-Fi覆盖弱、千兆宽带实际速率不足、多终端卡顿掉线等家庭网络核心痛点。文… · 2026/9/25 8:53:14

河北欧米奇西点西餐学校行业口碑如何
河北欧米奇西点西餐学校行业口碑如何

核心定位河北欧米奇西点西餐学校是中国东方教育集团旗下经石家庄市批准设立的正规西式餐饮职业学校,作为河北省西式餐饮专业人才培养重点基地,核心面向15-18岁青少年提供技能学历双提升的西式餐饮技能培训服务,深耕行业三十余年,已… · 2026/9/25 8:53:14

RisingWave 流式并行度统一配置设计解析:streaming_parallelism 参数语义、解析规则与旧参数迁移指南
RisingWave 流式并行度统一配置设计解析:streaming_parallelism 参数语义、解析规则与旧参数迁移指南

数据库流处理后端数据工程 【免费下载链接】risingwave Event streaming platform for agentic AI. Continuously ingest, transform, and serve event streams in real time, at scale. 项目地址: https://gitcode.com/gh_mirrors/ri/risingwave 点击查看 免费下载… · 2026/9/25 8:53:07

数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)
数值优化(Numerical Optimization)学习系列-03-共轭梯度方法(Conjugate Gradient)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战
创维E900V22D刷机全攻略:S905L3SB芯片兼容性解析与救砖实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:31

MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX
MQTT协议原理与Broker服务器搭建实战:从Mosquitto到EMQX

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/25 1:00:37

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码