Posted in

Golang国产化人才缺口达4.7万人?信创企业Golang工程师能力模型(含龙芯汇编调试/国密算法实现/等保测评实操)

第一章:Golang国产化战略背景与人才缺口深度解析

近年来,信创产业加速落地,操作系统(如统信UOS、麒麟V10)、数据库(达梦、人大金仓、openGauss)、中间件(东方通、普元)等基础软件全面推进自主可控。在这一进程中,Golang凭借其静态编译、内存安全、高并发原生支持及无依赖部署等特性,成为构建云原生基础设施、微服务网关、可观测性组件及国产化中间件核心模块的首选语言——例如华为云的Karmada多集群调度器、OpenEuler社区的iSulad容器运行时、以及航天科工某型号指挥系统后端均采用Go重构。

国产化政策驱动下的技术选型转向

《“十四五”数字经济发展规划》明确要求关键领域基础软件实现“可替代、可演进、可审计”。Golang的CGO可控性(可通过//go:build !cgo禁用C依赖)、交叉编译能力(GOOS=linux GOARCH=arm64 go build -o app ./main.go)及对龙芯LoongArch、申威SW64等国产指令集的官方支持(自Go 1.21起),显著降低信创环境适配成本。

真实人才供需断层现状

据工信部《2023信创人才发展白皮书》数据:

岗位类型 企业需求量(年) 具备Go+信创栈能力的候选人占比
基础平台开发工程师 12,800+ 6.2%
安全加固工程师 7,500+ 3.8%
国产芯片适配工程师 4,200+

核心能力缺口具象表现

  • 缺乏对国产加密算法SM2/SM3/SM4的Go标准库级集成经验(需熟练使用github.com/tjfoc/gmsm并完成国密SSL双向认证配置);
  • 不熟悉在麒麟V10上通过dnf install golang安装后,需手动设置GOROOT_FINAL="/usr/lib/golang"以避免路径硬编码问题;
  • 对国产化CI/CD流水线中交叉编译验证缺失:典型命令应为
    # 针对飞腾FT-2000+/ARM64平台构建并校验符号表
    GOOS=linux GOARCH=arm64 CGO_ENABLED=0 go build -ldflags="-s -w" -o service-arm64 .
    file service-arm64 | grep "ARM aarch64"

第二章:信创环境下的Golang核心能力筑基

2.1 龙芯LoongArch架构下Go运行时适配原理与交叉编译实战

龙芯LoongArch是自主指令集架构,其寄存器命名、系统调用约定及ABI(如LP64D)与x86_64/ARM64存在本质差异。Go运行时需在src/runtimesrc/runtime/cgo中新增loong64平台支持,并重写stack.hasm.smksyscall.pl等关键文件。

运行时核心适配点

  • runtime·stackcheck需适配LoongArch的栈帧布局(r1为返回地址,r2为栈指针)
  • syscall封装需映射LoongArch Linux syscall number(如__NR_write = 64)
  • g0栈切换逻辑须遵循la64调用规范:使用jirl而非ret,保留r23–r31调用者保存寄存器

交叉编译流程

# 基于Go 1.22+源码构建LoongArch原生工具链
cd src && GOOS=linux GOARCH=loong64 ./make.bash
# 编译用户程序(需指定LoongArch内核头路径)
CGO_ENABLED=1 CC_loong64=loongarch64-linux-gnu-gcc \
  go build -o hello-la64 -ldflags="-s -w" hello.go

上述命令中,CC_loong64触发cgo交叉编译;-ldflags="-s -w"剥离调试符号以适配嵌入式场景;GOARCH=loong64激活runtime/loong64目录下的汇编与C绑定逻辑。

组件 LoongArch适配位置 关键变更
调度器 runtime/proc.go getg()读取$r2获取当前G结构体地址
GC栈扫描 runtime/stack.go 解析r2/r3寄存器帧指针,跳过r1(RA)防误回收
graph TD
    A[Go源码] --> B{GOARCH=loong64?}
    B -->|是| C[加载runtime/loong64/asm.s]
    B -->|否| D[使用默认amd64路径]
    C --> E[链接loong64.syscall.S]
    E --> F[生成LP64D ABI可执行文件]

2.2 国密SM2/SM3/SM4算法在Go标准库生态中的原生实现与性能调优

Go 标准库本身不包含国密算法(SM2/SM3/SM4),其原生支持依赖社区主导的 github.com/tjfoc/gmsm 等成熟实现。该库已通过国家密码管理局商用密码检测中心认证,广泛用于金融、政务系统。

核心实现特性

  • ✅ 纯 Go 实现,无 CGO 依赖,跨平台兼容性强
  • ✅ SM2 支持 IEEE P1363 格式密钥交换与签名(SignWithD / Verify
  • ✅ SM3 使用向量化 SHA-256 风格轮函数,吞吐达 320 MB/s(AMD EPYC 7742)
  • ✅ SM4 ECB/CBC/GCM 模式完整,GCM 实现经 NIST CAVP 测试验证

SM2 签名性能关键路径示例

// 使用预计算椭圆曲线点加速签名(避免重复模幂)
priv, _ := sm2.GenerateKey(rand.Reader)
hash := sm3.Sum(nil) // SM3 哈希输入
r, s, _ := priv.Sign(rand.Reader, hash[:], nil) // nil 表示使用默认 ID "1234567812345678"

Sign 内部复用 sm2.curve.ScalarBaseMult 预热点表,减少约 37% 签名延迟;nil 第四参数触发国密标准默认用户标识("1234567812345678"),确保符合 GM/T 0009-2012。

性能对比(1MB 数据,Intel i7-11800H)

算法 模式 吞吐量 CPU 占用
SM3 Hash 312 MB/s 82%
SM4 GCM-128 1.8 GB/s 95%
SM2 Sign/Verify 8.4k/s 33%
graph TD
    A[原始明文] --> B[SM3哈希]
    B --> C[SM2签名]
    A --> D[SM4-GCM加密]
    C & D --> E[ASN.1封装输出]

2.3 基于OpenEuler+KubeEdge的国产化云原生Go服务开发范式

在信创环境下,以OpenEuler为底座、KubeEdge为边缘协同框架,构建轻量高兼容的Go微服务成为主流实践路径。

核心架构分层

  • 基础设施层:OpenEuler 22.03 LTS(SP3)提供内核级安全加固与ARM64/x86_64双架构支持
  • 边缘编排层:KubeEdge v1.12+ EdgeCore接管设备接入与离线自治
  • 应用层:Go 1.21+ 模块化服务,通过k8s.io/client-go对接CloudCore API

边缘服务初始化示例

// main.go:基于KubeEdge DeviceTwin机制注册温湿度传感器
func initEdgeDevice() {
    client := edgemesh.NewClient("http://127.0.0.1:10002") // EdgeMesh REST端点
    device := &v1.Device{
        ObjectMeta: metav1.ObjectMeta{Name: "sensor-th-01"},
        Spec: v1.DeviceSpec{
            DeviceModelRef: &v1.ObjectReference{Name: "temp-hum-model"},
            Network: v1.Network{IP: "192.168.1.101"},
        },
    }
    client.CreateDevice(context.TODO(), device) // 触发云端同步与状态透传
}

该代码调用KubeEdge EdgeMesh提供的本地REST接口完成设备声明,10002端口为EdgeCore暴露的设备管理端点;CreateDevice隐式触发CloudCore侧DeviceTwin状态同步,实现“一次注册、双向感知”。

关键组件兼容性对照表

组件 OpenEuler 22.03 SP3 支持 KubeEdge v1.12 兼容性 Go 版本要求
systemd-cgroup v2 ✅ 原生启用 ✅ 完全适配 ≥1.20
SELinux 策略模块 ✅ 预置kubeedge.te ✅ 已验证
CGO_ENABLED=1 ✅ 默认开启 ✅ 必需(CNI/openssl)
graph TD
    A[Go服务启动] --> B{检测运行环境}
    B -->|OpenEuler+KubeEdge| C[加载edgemesh.Client]
    B -->|非边缘环境| D[降级为mock.Client]
    C --> E[自动订阅DeviceTwin事件]
    E --> F[响应属性变更并触发本地采集]

2.4 Go语言在等保2.0三级系统中的安全编码规范与漏洞规避实践

输入验证与参数净化

所有外部输入(HTTP Query、Header、JSON Body)必须经白名单校验。禁止直接拼接SQL或OS命令:

// ✅ 推荐:使用正则白名单限制用户名格式(仅字母数字下划线,长度3–16)
func validateUsername(s string) bool {
    return regexp.MustCompile(`^[a-zA-Z0-9_]{3,16}$`).MatchString(s)
}

逻辑分析:^$确保全匹配,避免绕过;{3,16}防止超长导致缓冲区溢出;未使用.*类模糊模式,杜绝正则回溯攻击。

关键安全配置项对照表

风险类型 Go标准库方案 等保2.0三级要求
密码传输 http.Server.TLSConfig强制TLS 1.2+ 必须启用加密通道
会话安全 http.Cookie.HttpOnly=true; Secure=true 防XSS窃取+仅HTTPS传输

安全初始化流程

graph TD
    A[启动时加载密钥] --> B[校验证书链有效性]
    B --> C[禁用不安全TLS版本]
    C --> D[设置GOMAXPROCS=runtime.NumCPU]

2.5 国产中间件(达梦DM、人大金仓Kingbase)Go驱动深度集成与事务一致性保障

驱动注册与连接池初始化

需显式导入官方 Go 驱动并注册 SQL 驱动名,避免 sql.Open 时因未注册导致 panic:

import (
    _ "github.com/dmhsu/go-dm"           // 达梦 v8.1+
    _ "gitee.com/kingbase/kingbase-go"   // KingbaseES v10+
)

db, err := sql.Open("dm", "dm://SYSDBA:SYSDBA@127.0.0.1:5236?schema=PUBLIC")
if err != nil {
    log.Fatal(err)
}
db.SetMaxOpenConns(20)
db.SetMaxIdleConns(10)

dm://kingbase:// 是各驱动注册的协议前缀;schema 参数指定默认模式,达梦中为 SYSDBA 或用户模式,Kingbase 中区分大小写且默认为 public

分布式事务一致性关键约束

  • 两阶段提交(2PC)需服务端开启 XA 支持
  • Go 客户端必须使用 sql.Tx 显式控制 Commit() / Rollback()
  • 连接不能复用跨事务上下文(避免隐式自动提交)
特性 达梦 DM8 KingbaseES V10
XA 事务支持 ✅(需配置 xa_open=1) ✅(需启动 xa_transaction)
Savepoint 级别回滚 ✅(仅限 SERIALIZABLE)
预编译语句缓存 ✅(默认启用) ⚠️(需 prepare=true

事务链路追踪示意

graph TD
    A[Go App BeginTx] --> B[Driver 构造 XID]
    B --> C[向 DB 发起 XA START]
    C --> D[业务 SQL 执行]
    D --> E{是否异常?}
    E -->|是| F[XA END + XA ROLLBACK]
    E -->|否| G[XA END + XA PREPARE]
    G --> H[XA COMMIT]

第三章:国产硬件平台Golang底层调试与性能工程

3.1 龙芯3A5000平台下Go程序汇编级调试:LLDB+LoongArch指令集逆向分析

在龙芯3A5000(LA64架构)上调试Go程序需适配LoongArch64指令集特性。首先确认LLDB版本支持LoongArch(≥15.0),并启用Go运行时符号加载:

# 启动LLDB并加载Go二进制(含DWARF)
lldb ./hello-world --arch loongarch64
(lldb) target create "./hello-world" --arch=loongarch64
(lldb) settings set target.run-args "test"

逻辑分析--arch=loongarch64 强制LLDB使用LA64寄存器布局与解码器;Go二进制需用 GOOS=linux GOARCH=loong64 CGO_ENABLED=0 go build -gcflags="all=-N -l" 构建,禁用内联与优化以保留完整调试信息。

关键寄存器映射对照

LoongArch64 寄存器 LLDB 别名 Go runtime 用途
r4 $arg1 第一个函数参数(或SP备份)
r22 $fp 帧指针(Go使用r22而非r30)
r23 $lr 链接寄存器(调用返回地址)

断点与反汇编示例

(lldb) b main.main
(lldb) r
(lldb) disassemble -c 8
-> 0x120000a80: ld.d   a0, s9, 8        # 加载栈帧中局部变量(s9 = fp)
   0x120000a84: addi.w t0, a0, 1        # t0 = a0 + 1(LoongArch无inc,用addi.w)
   0x120000a88: st.d   t0, s9, 8        # 存回更新值

参数说明ld.d 是64位加载指令,基址寄存器s9(即$fp)偏移+8;addi.w 对低32位执行带符号立即数加法,体现LoongArch精简指令设计哲学。

graph TD A[Go源码] –>|go build -arch=loong64| B[ELF+DWARF二进制] B –> C[LLDB加载并解析LA64符号表] C –> D[设置断点→寄存器快照→反汇编→指令语义匹配] D –> E[定位GC标记/协程切换/栈增长异常]

3.2 RISC-V兼容环境下Go内存模型验证与GC行为观测实验

数据同步机制

在RISC-V(rv64gc)平台运行go test -race可捕获数据竞争。关键验证代码如下:

// race_test.go:启动两个goroutine并发读写共享变量
var x int
func TestRISCVMemoryModel(t *testing.T) {
    go func() { x = 1 }() // 写操作
    go func() { _ = x }() // 读操作(无同步)
    runtime.Gosched()
}

该测试在QEMU+OpenSBI模拟器中触发-race检测器报告Write at 0x... by goroutine 2,证实RISC-V后端已正确实现sync/atomic指令映射(如amoswap.d)及内存屏障语义。

GC行为观测对比

环境 GC Pause (avg) Heap Growth Rate 触发条件
x86_64 Linux 124μs 1.5×/s 4MB heap threshold
RISC-V QEMU 287μs 0.9×/s 2MB + explicit GOGC=50

GC触发流程

graph TD
    A[Allocated memory > heap goal] --> B{Is mark phase active?}
    B -->|No| C[Start GC cycle: sweep → mark → assist]
    B -->|Yes| D[Trigger concurrent mark assist]
    C --> E[Update mheap_.gcPercent]

3.3 飞腾FT-2000/4平台CPU亲和性调度与NUMA感知型Go并发优化

飞腾FT-2000/4为4核8线程ARMv8处理器,集成双通道DDR4控制器,具备明确的NUMA拓扑(单Socket,但L3缓存与内存控制器按核心对分域)。

CPU亲和性绑定实践

Go运行时默认不绑定OS线程到物理核心。需显式调用syscall.SchedSetaffinity

// 将当前goroutine绑定至核心0(FT-2000/4核心编号0~3)
cpuMask := uint64(1) // bit 0 set
err := syscall.SchedSetaffinity(0, &cpuMask)
if err != nil {
    log.Fatal("affinity set failed:", err)
}

逻辑分析SchedSetaffinity(0, ...)作用于当前进程;cpuMask=1仅启用core 0,避免跨核缓存同步开销。FT-2000/4中,同一核心的两个硬件线程共享L1/L2,绑定可提升TLB与缓存局部性。

NUMA感知内存分配策略

策略 适用场景 FT-2000/4建议
numactl --cpunodebind=0 --membind=0 关键计算goroutine ✅ 强制本地内存访问
mmap(MAP_HUGETLB) 大页减少TLB miss ✅ 支持2MB大页

并发模型适配

graph TD
    A[Go主协程] --> B{runtime.LockOSThread()}
    B --> C[绑定至core 0]
    C --> D[启动worker goroutine]
    D --> E[通过GOMAXPROCS=4限制P数量]
    E --> F[各P独占1个物理核]

第四章:信创合规落地关键场景实操指南

4.1 等保测评中Go微服务日志审计模块开发:满足GB/T 28448-2019日志留存要求

日志字段强制规范

依据GB/T 28448-2019第8.1.4.2条,审计日志须包含:操作时间、主体标识、客体标识、操作类型、操作结果、源IP、日志生成节点。

日志结构定义与序列化

type AuditLog struct {
    Timestamp time.Time `json:"timestamp" db:"timestamp"`
    Subject   string    `json:"subject" db:"subject"`   // 用户ID或服务名
    Object    string    `json:"object" db:"object"`     // API路径/资源ID
    Action    string    `json:"action" db:"action"`     // "login", "delete", "modify"
    Result    bool      `json:"result" db:"result"`     // true=成功
    ClientIP  string    `json:"client_ip" db:"client_ip"`
    NodeID    string    `json:"node_id" db:"node_id"`   // Kubernetes Pod UID
}

该结构严格对齐等保三级“日志记录完整性”要求;time.Time确保纳秒级精度(满足留存≥180天的时序可溯性);db标签支持无缝对接ClickHouse审计库;所有字段非空校验由中间件前置注入,避免空值绕过。

存储策略对照表

要求项 GB/T 28448-2019条款 实现方式
保存期限 8.1.4.3 TTL=180d(ClickHouse PARTITION BY toYYYYMMDD)
防篡改 8.1.4.4 写入后立即生成SHA-256哈希并落库audit_log_digest

数据同步机制

graph TD
    A[HTTP Handler] --> B[Middleware: Inject AuditLog]
    B --> C[JSON Marshal + HMAC-SHA256 Sign]
    C --> D[Async Kafka Producer]
    D --> E[Consumer → ClickHouse + S3冷备]

4.2 电子政务场景下国密HTTPS双向认证服务端Go实现(含SM2证书签发与TLS1.3协商)

SM2证书签发关键步骤

使用github.com/tjfoc/gmsm生成SM2密钥对,并通过国密CA私钥签发客户端证书:

caPriv, _ := sm2.GenerateKey(rand.Reader)
clientPriv, _ := sm2.GenerateKey(rand.Reader)
tmpl := &x509.Certificate{PublicKey: clientPriv.Public(), SignatureAlgorithm: x509.SM2WithSM3}
certBytes, _ := x509.CreateCertificate(rand.Reader, tmpl, caCert, clientPriv.Public(), caPriv)

SignatureAlgorithm: x509.SM2WithSM3 显式启用国密套件;CreateCertificate需传入SM2公钥而非RSA,否则签发失败。

TLS 1.3双向认证配置要点

  • 启用tls.TLS_AES_128_GCM_SM4_SHA256密码套件
  • ClientAuth: tls.RequireAndVerifyClientCert 强制验签
  • GetConfigForClient动态加载SM2证书链
组件 国密要求
密钥交换 ECDHE-SM2
摘要算法 SM3
对称加密 SM4-GCM(RFC 8998)
graph TD
    A[客户端发起ClientHello] --> B[服务端返回SM2证书+SM4-GCM密钥套件]
    B --> C[客户端验证CA签名并提交SM2证书]
    C --> D[双方完成ECDHE-SM2密钥协商]

4.3 政企私有云环境中Go开发的信创中间件网关:对接麒麟V10+海光C86可信启动链

在政企私有云场景中,该网关基于 Go 1.21+ 构建,原生支持海光 C86 架构交叉编译,并深度集成麒麟 V10 的 UKUI 安全模块与 TCM 可信度量链。

可信启动校验流程

// verifyBootChain.go:调用麒麟内核安全接口校验启动度量日志
func VerifyKernelChain() (bool, error) {
    logPath := "/sys/kernel/security/ima/binary_runtime_measurements"
    data, err := os.ReadFile(logPath) // 需 root 权限 + ima_tcb 策略启用
    if err != nil {
        return false, fmt.Errorf("IMA log read failed: %w", err)
    }
    return sha256.Sum256(data).Sum(nil)[0] == expectedRootHash[0], nil
}

逻辑分析:代码通过读取 IMA(Integrity Measurement Architecture)二进制运行时度量日志,生成摘要并与预置可信根哈希比对。expectedRootHash 来自部署时由海光固件签名的启动策略证书,确保从 BIOS→GRUB→kernel→initrd 全链可信。

架构兼容性矩阵

组件 麒麟V10 SP1 海光C86(Hygon Dhyana) Go交叉目标
内核模块加载 ✅ ukui-sec ✅ TCM驱动已合入主线 GOOS=linux GOARCH=amd64 GOAMD64=v3
TLS加速 ✅ OpenSSL 3.0+国密SM4-SM2 ✅ CPU级SM3指令支持 启用crypto/tls国密扩展

启动链验证流程

graph TD
    A[海光固件TPM2.0] --> B[BIOS度量→PCR0]
    B --> C[GRUB2加载→PCR2]
    C --> D[Kernel+initrd→PCR10]
    D --> E[麒麟UKUI安全服务]
    E --> F[Go网关读取IMA日志]
    F --> G[校验哈希链完整性]

4.4 基于统信UOS的Go桌面应用国产化适配:DBus通信、国密USBKey驱动封装与签名验签

在统信UOS环境下,Go应用需深度集成系统级能力以满足政务/金融场景合规要求。

DBus服务调用示例

// 使用github.com/godbus/dbus/v5连接系统总线,调用国密服务接口
conn, err := dbus.SystemBus()
if err != nil {
    log.Fatal("DBus连接失败:", err) // 统信UOS默认启用systemd-logind、ukui-session等DBus服务
}
obj := conn.Object("org.ukui.SessionManager", "/org/ukui/SessionManager")
call := obj.Call("org.ukui.SessionManager.LockScreen", 0)

该调用依赖UOS预装ukui-session-manager服务;表示无超时(单位毫秒),实际部署需设为3000防阻塞。

国密USBKey驱动封装关键路径

组件 位置 说明
libscdr.so /usr/lib64/ SM2/SM4硬件加解密动态库
pcscd.service systemctl status pcscd UOS默认启用,提供智能卡抽象层

签名验签流程

graph TD
    A[Go应用调用Cgo封装] --> B[libscdr.so SM2_sign]
    B --> C[USBKey内SM2私钥运算]
    C --> D[返回DER格式签名]
    D --> E[通过DBus向ukui-keyring服务持久化存证]

第五章:Golang国产化人才能力演进路径与生态展望

国产信创场景下的真实工程挑战

某省级政务云平台在2023年完成核心审批系统从Java微服务向Go重构,迁移过程中暴露关键能力断层:67%的开发人员缺乏CGO交叉编译经验,无法适配麒麟V10+飞腾D2000组合环境;32%的团队未掌握OpenSSL国密SM2/SM4动态链接库绑定方案,导致国密SSL握手失败率高达41%。该案例印证——单纯语法熟练度远不足以支撑国产化落地。

人才能力三维演进模型

能力层级 典型任务 关键工具链 国产化验证指标
基础适配层 静态编译二进制包 GOOS=linux GOARCH=arm64 CGO_ENABLED=1 在统信UOS上通过ldd验证无glibc依赖
安全合规层 国密算法集成 github.com/tjfoc/gmsm + crypto/tls扩展 SM2证书双向认证通过等保三级渗透测试
生态协同层 与达梦数据库深度交互 godror驱动定制版+DM8分布式事务支持 XA事务提交成功率≥99.999%

开源社区共建实践

华为云开源的go-dm项目已实现达梦数据库v8.4协议解析器,其贡献者中35%为高校联合培养的“信创特训班”学员。典型PR示例:修复TIMEZONE参数在麒麟系统时区识别异常问题(PR#217),该补丁被纳入DM8.4.2.21正式发行版。

企业级能力认证体系

# 某金融国企Go国产化工程师认证实操题
# 要求:在鲲鹏服务器编译支持SM4-GCM的TLS服务端
export GOOS=linux
export GOARCH=arm64
export CGO_ENABLED=1
export PKG_CONFIG_PATH="/usr/local/openssl-sm/gcm/lib/pkgconfig"
go build -ldflags="-s -w" -o sm4-server main.go

教育协同创新机制

西安电子科技大学与龙芯中科共建的“LoongArch Go运行时实验室”,已实现Go 1.21对龙芯3A5000的syscall指令集全覆盖。学生团队开发的loongarch64-syscall-tracer工具,可实时捕获国产CPU特有的syscall异常中断,该工具被集成进统信UOS开发者套件v23.10。

生态演进关键节点

graph LR
A[2022年 Go官方支持RISC-V] --> B[2023年 龙芯Go团队提交LoongArch后端]
B --> C[2024年 OpenEuler社区发布Go-Runtime-Optimized镜像]
C --> D[2025年 预计达成国产芯片Go原生支持率100%]

工程效能量化提升

中国电子技术标准化研究院《2024信创Go应用白皮书》显示:采用国产化Go技术栈的政务项目,平均交付周期缩短38%,其中容器镜像体积减少62%(对比Java Spring Boot),内存占用峰值下降55%。某税务系统通过pprof火焰图优化GC停顿,将麒麟V10环境下的STW时间从210ms压降至17ms。

供应链安全加固实践

某央企采用goreleaser构建国产化发布流水线,强制执行三项策略:① 所有依赖必须来自CNCF中国镜像站;② 二进制文件嵌入SM3哈希指纹;③ 编译过程全程使用飞腾FT-2000/4硬件签名。该流程已通过国家密码管理局商用密码检测中心认证。

未来技术融合方向

随着昇腾NPU加速卡在AI推理场景普及,gorgonia团队正与华为昇思MindSpore合作开发Go原生算子接口,首个支持aclrtCreateContextgo-ascend SDK已在openEuler社区进入Beta测试阶段。

记录分布式系统搭建过程,从零到一,步步为营。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注