logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

Rust 所有权系统与并发原语:编译期保证线程安全的底层机制

Rust 的所有权系统通过SendSync两个编译期 Trait,将并发安全的证明从运行时迁移到编译期。这一设计的代价是更陡峭的学习曲线和更长的编译时间,但收益是显而易见的——通过编译的多线程 Rust 代码在数据竞争层面已被静态验证。是生产级 Rust 并发的核心模式,其 RAII 风格的锁管理与编译期借用检查共同消除了"忘记解锁"和"数据竞争"两类运行时隐患。

#人工智能
C++ 高性能推理引擎实战:用 ONNX Runtime 把模型推理延迟压到 10ms 以下

线程数精调:不是越多越好,物理核心数 / 4 是个好起点内存 Arena:预分配干掉 malloc/free 的系统调用图优化全开:算子融合 + 常量折叠 + 布局优化从 Python 的 80ms 到 C++ 的 8ms,10 倍提升。每一毫秒,都是真金白银。

文章图片
#人工智能
Rust 实现高性能向量检索:用 SIMD 加速 Embedding 相似度计算

一条指令同时处理多个数据。普通指令:一次算 1 个乘法。AVX2 指令:一次算8 个float32 乘法。AVX-512 指令:一次算16 个float32 乘法。graph LRsubgraph 普通指令A1["a[0] × b[0]"] --> R1["结果"]endB1["a[0..7] × b[0..7]"] --> R2["8 个结果一次算完"]endSIMD 指令:一次处理 8 个 f

文章图片
#人工智能
跨语言 Benchmark 实战:C++、Rust、Go、Java 在 AI 向量计算场景下的性能硬核横评

不到 10ms 以下别跟我说优化过。高性能不是吹出来的,是在寄存器级别实打实跑出来的。如果你追求极致算力,且没有网络 IO 损耗,选用C++或Rust。如果你的业务以快速迭代的 API 业务为主,Java (启用 Vector API)和Go也完全够用,但必须注意降低内存拷贝损耗。数据已经摆在上面,怎么选显而易见。

文章图片
#人工智能
Rust 系统编程:零成本抽象与内存安全的性能工程

Rust 通过所有权系统和借用检查器,在编译期消除了内存安全和数据竞争问题,同时不引入运行时开销。零成本抽象的核心机制——Trait + Monomorphization——让泛型代码在编译后与手写特化代码性能一致。但 Rust 不是银弹:编译时间长、学习曲线陡峭、异步生态碎片化,都是需要权衡的代价。落地路线建议:第一,从 CLI 工具或性能敏感的微服务开始引入 Rust,而非全栈重写;第二,建立

文章图片
#人工智能
Go/Rust 系统编程:无锁数据结构与 CAS 并发控制的深度剖析

无锁数据结构通过 CAS 原子操作替代互斥锁,在高竞争场景下提供了更优的吞吐和尾延迟表现。核心实践包括:Michael-Scott 队列实现无锁 FIFO,Treiber Stack 实现无锁 LIFO,Hazard Pointer 解决内存回收问题,版本号 CAS 解决 ABA 问题。选型时应根据竞争程度决定——低竞争场景 Mutex 足够,高竞争场景无锁方案优势明显。内存回收策略需根据语言特性

文章图片
#人工智能
Go/Rust 系统编程:内存对齐与缓存行优化的性能工程

内存对齐和缓存行优化是系统编程中"用空间换时间"的经典手段。将热字段集中到缓存行0可以减少缓存未命中,将并发修改的字段分散到不同缓存行可以消除伪共享。这些优化的收益在单线程场景下不明显,但在高并发、数据密集的场景下,可以带来 2-5 倍的性能提升。落地路线建议:第一步,使用 perf/cachetop 识别缓存未命中的热点结构体;第二步,对热点结构体按访问频率重排字段,热字段前置;第三步,对多线程

文章图片
#人工智能
模型量化与推理引擎:GPTQ 权重量化的精度恢复与加速实践

GPTQ 通过逐层误差补偿和 Hessian 近似,将 INT4 量化的精度损失控制在可接受范围内。分组量化(Group Size 128)是精度与压缩比的最佳平衡点。在实际部署中,校准数据集的选择和分组大小的配置是影响量化质量的关键因素。INT4 量化的加速主要来自显存带宽节省,在显存密集型场景下效果最佳。建议从 INT8 量化起步验证精度,确认可接受后再尝试 INT4 + GPTQ。

文章图片
#人工智能
模型量化技术解析:PTQ到GPTQ的精度与效率平衡

模型量化是加速推理和降低成本的关键技术。INT8量化精度损失极小,应作为默认方案;INT4量化需要GPTQ或AWQ等高级方法才能保持可用精度。GPTQ通过Hessian引导的逐列量化和误差传播,在INT4量化下实现了接近FP16的效果。选型时需根据任务精度要求选择量化位数,根据推理数据分布选择校准集,Group Size推荐128作为起点。维度评估标准得分直接性直接陈述事实还是绕圈宣告?9/10节

文章图片
#人工智能
Go Goroutine 与 Rust async:调度机制的实际差异

Go Goroutine 和 Rust async 代表了两种不同的并发哲学:Goroutine 追求开发效率和运行时公平性,async 追求极致性能和编译期安全。选择的关键在于场景特征——I/O 密集型高并发服务两者皆可,但百万连接保活场景 Rust async 的内存效率更优;计算与 I/O 混合场景 Go 的抢占式调度更安全;需要 FFI 的场景 Rust 的零开销抽象更合适。落地建议:先量

文章图片
#人工智能
    共 59 条
  • 1
  • 2
  • 3
  • 6
  • 请选择