Rust与D 的PK

Qwen3.7-Max:首个通过Rust编译器级验证的工程级AI编程伙伴 Rust作为系统编程语言,以严格的内存安全、生命周期和所有权模型著称,其编译错误(如E0597、E0382)本质是逻辑完备性验证。真正具备Rust工程能力的AI,必须理解unsafe边界、零拷贝I/O、跨平台条件编译及Result错误分类学,而非仅生成语法正确代码。这类能力在磁盘恢复等高可靠性场景中被极致放大——它要求模型同时掌握文件系统二进制布局、硬件访问权限、多线程资源竞争规避与AI辅助重建的可信标记机制。Qwen3.7-Max正基于此,成为少数能通过编译器级压力测试并交付可嵌入生产代码的Rust实战伙 阅读详情

比较Rust的“并发”与D的“并行” 运算能力,Rust 1.0 alpha2 ,D(dmd 2.066.1 LDC 0.15.1 (LLVM3.6 MS VC64)。都设置为使用总CPU数的75%.

比较2点:1、使用内存,2、运行时长。

(注:虽然此题已在 以下两篇文章中以“数学公式”法做过比较,但对运行效率的比较意义不大。

  http://blog.youkuaiyun.com/iilovetopview/article/details/43745059

http://blog.youkuaiyun.com/iilovetopview/article/details/43913027

)

/*题目:

 有一个整数n,写一个函数f(n),返回0到n之间出现的"1"的个数。
  比如f(13)=6,现在f(1)=1,问下一个最大的f(n)=n的n是什么?

*/

 一、用穷举法查10万以内的数。

1、Rust:

use std::time::duration::Duration;
use std::sync::TaskPool;
use std::sync::mpsc::channel;

fn main() { 
	println!("(Rust Language) Please wait for some minutes,will found Next Fn(n) = n ,the n is:");
   let r = Duration::span(tr);
   println!(" time :{} seconds",r.num_seconds());
}

fn tr()
{
 	let pool = TaskPool::new(3);
	let ( tx, rx)  = channel();
	let (mut n,max)= (1,100_000);
	while(n<max)
	{
		let tx = tx.clone();
    	pool.execute(move|| {
       	tx.send(fnx(n)).unwrap();
    	});
		n+=5000;
    }

	for a in rx.iter(){
		if(a > max)
		{
			println!(" Now End {}",a);
			break;
		}
	}	 
 }

fn fnx(x:usize) -> usize
{
	let ( mut pos,mut n ,mut count)=(0,x,0);
	while(n >0)
	{ 
	  	pos = Fx(n);
		if(n == pos) 
		{
			count +=1;
			println!("n is: {0},  Fn(n) is:{1} ",n,pos);
			if(count >1) {break;}
		}
		n+=1;
		if(n >x+5000){break;}
	}
	return n;
}

fn Fx (n: usize) -> usize 
{
	let mut total =0;
 	for i in 0..n+1{
 		total += Count(i);
 	}
 	return total;
}
 
fn Count(n: usize) ->usize
{
  	let (mut num,mut t) = (0,n);
  	while(t >= 1)
  	{
  		if(t%10 ==1){num +=1;}
  		t /= 10;
  	}
  	return num;
}

-------Debug

内存占用:

运行时长:
----Release

内存占用:

运行时长:

D语言(并行模式):

module fn;
import std.stdio;
import std.array;
import std.datetime;
import std.parallelism;

int[] v;
 
void main()
{ 
	writeln("(D Language)  Please wait for some minutes,will found Next Fn(n) = n ,the n is:");
	int n=1;
	while(n<100_000)
	{
		v~=n;
		n+=5000;
	}
	StopWatch sw;
	sw.start();
    auto tp = new TaskPool(2);
	foreach(c; tp.parallel(v))
	{
		fx(c);
	}
	tp.finish();
	sw.stop();
	writeln(" time :" , sw.peek().msecs/1000.0,"secs");
	writeln(n," stop");
}
 
int fx(int n)
{
	int count,pos,nmax = n+5000;
 
	while(n < nmax)
	{
		pos = Fn(n);
		if(n == pos) 
		{
			count++;
			writeln("n is: ",n, " Fn(n) is: ",pos);
			if(count >1) break;
		}
		n++;
	}
	return n;
}
int Fn(int n)
{
	int total;
	for(int i=0;i<=n;i++)
	{
		total += Count(i);
	}
	return total;
}
int Count(int n)
{
	int num;
	for(int t = n;t >=1;t=t/10)
	{
		if(t%10 == 1) num++;
	}
	return num;
}

---dmd debug

内存占用:

运行时长:
-----ldc2 release

内存占用:

运行时长:


D语言(并发模式):(未完,)

--------------------待续-----------------------
大家可以看到:同样是运用3个内核(75%),D的占用内存稍大,但Debug模式下运行效率是Rust的几乎2倍,但Release模式下,Rust(并发)只是比D(并行)稍快3秒!!! 。准备有时间再写D的并发。。。

但此时没有内存消耗,显示不出Rust的RAll特性。

D语言的代码简洁、高效非常吸引人。





避坑指南:在Rust中集成YOLO模型时,你可能会遇到的3个‘坑’及解决方案 本文详细解析了在Rust中集成YOLO模型时常见的三大陷阱:环境配置中的DLL加载问题、模型加载时的元数据解析难题以及后处理阶段的内存管理冲突。针对每个问题,提供了经过实战检验的解决方案,包括稳健的动态链接库加载机制、安全的ZIP库解析方法以及内存安全的Tensor操作策略,帮助开发者高效实现目标检测推理任务。 阅读详情

相关推荐

Web3开发技术栈与核心编程语言指南

区块链技术通过去中心化架构重构了传统Web开发范式,其核心在于智能合约与分布式账本的结合。智能合约作为链上可执行代码,通常采用Solidity等静态类型语言开发,以确保安全性与确定性执行。在工程实践中,开发者需要根据应用场景选择技术栈:以太坊生态以Solidity+JavaScript为主,Rust则因高性能特性成为Solana等公链的首选。随着Web3应用场景扩展,TypeScript在前端交互、Python在数据分析、Go在节点开发等领域均有关键作用。掌握Web3.js/ethers.js等库与Hard

angw337679452的博客 381

d语言对比rust

d在简洁性和表达性方面,胜了很多.而rust的明确性更好.rust更学术,D更实用. module main; import std.stdio; void main() { writeln( "Hello, 世界" ); } fn main() { println!("Hello, 世界") } 秀有隐式导入.可省略分号,它用于转换表达式为语句. 包 module main; import std.stdio; import std.random; void main() {

个人进步之路 896

DeepSeek-V4 Pro本地接入与IDE集成实战指南

大模型API接入是当前AI工程化的核心环节,其本质是将远程推理能力无缝嵌入开发者日常工具链。DeepSeek-V4 Pro凭借OpenAI兼容协议、低延迟响应与原生Tool Calling支持,显著降低了模型集成门槛。相比传统闭源方案,它允许开发者通过标准HTTP调用、VS Code插件扩展或轻量代理(如Tauri/Rust)实现快速对接,兼顾安全性与可定制性。该技术路径不仅适用于代码补全、智能提交等编程场景,还可延伸至本地化部署、多模型协同(如CCSwitch)及边缘侧轻量推理(Ollama+量化模型)。

a304096740的博客 509

Rust、D、Go三者的Pk1

通过穷举法运算某题 比较 Rust 1.0 alpha2 (64位),D 2.066.1(LDC 0.15.1 llvm3.6 MSVC64)、Go 1.4.2(64位)的单线程运算能力,为让内存有变化,特意加入字典(Go,Rust)或关联数组(D)。 比较2点:1、使用内存,2、运行时长。 发现Rust的运算效率最高、估计图像显示效率也最高(时长:13ms),但占内存也高;D的运算效率只与Rust相差各6秒、2秒、10秒,但Go相差较多. 运算效率:Rust > D > GO 内存占用最小排名:Go <R

未来之眼的专栏 8096

Quiche Win64平台DLL与静态库完整开发包

简介:Quiche是由Cloudflare开发的开源QUIC协议实现库,旨在提升网络传输效率,支持HTTP/3,替代传统TCP/IP通信。本“quiche win64 dll lib”包专为Windows 64位系统构建,包含动态链接库(DLL)、静态库、导入库、调试符号及Rust底层支持文件,全面支持开发者在Windows环境下集成高性能QUIC功能。通过libquiche.rlib和Rust工具链,结合quiche.dll或quiche.lib进行动态或静态链接,开发者可快速实现低延迟网络应用。

weixin_28487725的博客 719

Qt QChart实战:从零打造一个实时温度监控仪表盘(附完整源码)

本文详细介绍了如何使用Qt QChart模块从零构建一个工业级实时温度监控仪表盘。通过实战案例,展示了波形图的绘制、坐标轴配置、数据流模拟等关键技术,并提供了完整的源码实现,帮助开发者快速掌握Qt在数据可视化领域的应用。

weixin_42537919的博客 243

DLang、Rust 以及 Golang 对比数据库操作方式

  总而言之系统级语言在服务端的应用日益增多,更多有意思的对比还需要大家一起来挖掘,不要沉浸在单一的脚本语言如 PHP、虚拟机语言 JAVA 和 C#,多多学习,现在语言的学习成本已经非常低,我们应该在不同的应用场景使用更适合的开发语言。...

zouduchen的博客 766

从零构建PEMFC仿真模型:MATLAB/Simulink中的模块化拆解与系统集成

本文详细介绍了如何在MATLAB/Simulink环境中从零构建质子交换膜燃料电池(PEMFC)仿真模型,包括电化学模型、气体供应系统和热管理系统的模块化实现。通过多物理场耦合技巧和系统集成策略,帮助工程师和研究者高效开发PEMFC控制策略,优化性能并实现实时仿真。

weixin_29294975的博客 360

rust的性能测试

一、性能测试 在rust中,只有lib.rs才可能进行extern crate的集成测试,二进制形式的测试是不可以的。原因在于rust的设计初衷就是在main.rs中尽量少完成功能,更多的功能转入到库中。这样,在二进制主程序中就不会有过多的性能来测试。在rust中,针对性能测试也提供了专门的属性#[bench]支持,这样就可以快速的在指定的场景资源情况进行资源测试,这在一门语言中还是比较少见的。 二、rust中如何进行性能测试 看下面的代码: #![feature(test)] extern crate t

fpcc的专栏 2613

从ACTF2020看文件上传漏洞:你以为改后缀就完事了?这些坑我都帮你踩过了

本文通过ACTF2020的Upload题目深入剖析文件上传漏洞的复杂性和防御策略。文章揭示了常见误区,如仅修改文件后缀的局限性,并详细解析了绕过技巧和高级防御机制。从开发角度提供了构建安全上传功能的实用建议,帮助读者全面理解文件上传漏洞的本质与防护方法。

weixin_29278805的博客 246

利用SPSS实现逻辑回归,树模型,以及广义线性模型

本案例是IBM SPSS数据分析与挖掘实战案例精粹----第九章的学习记录 案例背景:分析出导致急救后迟发性颅脑损伤的主要影响因素,共有201项案例: 分析思路:先使用logistic回归模型进行影响因素筛选,然后利用分类树探索自变量中是否存在交互作用,最后利用广义线性模型过程拟合带交互项的Logistic回归模型 字段:性别,年龄,收缩压,舒张压,血小板,脑挫伤,中线位移,脑肿胀,入院意识,是否手术急救,其余急救措施,是否出现迟发性脑损伤; ...

hepan_defeng的博客 1万+

Rust 和 C 性能对比:排序

“C++ 和 Java 的发展速度比 C 语言更快,但我敢肯定,C 语言仍然会长期存在。”Dennis Ritchie, C语言之父C 和 Rust 的速度比较方法比较这两种语言速度的方...

weixin_45583158的博客 1万+

ptrade量化策略之ST股弱转强,回测年化115%

本策略的核心是精选ST股票,国九条过滤,防止直接暴雷退市,只做ST股票的弱转强

qq_29301281的博客 1786

Rust: 高性能序列化库Fury PK bincode

对于二进制库来讲,据Fury官网的介绍,Fury性能要远远好于protobuf,且不象protobuf还需要定义IDL(即写.proto文件),非常轻便,随取随用。3、从序列化的内容对比来看,对应的u8字列向量,Fury的长度为114;1、对于Fury库而言,大家可以比较一下,不同结构序列化和反序列化的性能。在序列化库中,传统的有Json,XML,性能好的有thrift,protobuf等。不管是序列化和反序列化。目前Rust Fury库,还是初期,还是建议在github官网中,下载到本地。

代码过客 1286

NFS共享速度慢?麒麟系统性能调优5个关键参数实测对比

本文针对银河麒麟服务器系统上NFS共享速度慢的问题,通过实测对比分析了五个关键调优参数。重点探讨了rsize/wsize传输块大小、TCP/UDP协议选择、sync/async模式权衡等,并结合麒麟系统特性提供了具体的优化建议与配置示例,旨在帮助用户有效提升国产化环境下的文件共享性能。

weixin_29254029的博客 335

无迹卡尔曼滤波(UKF)推导

提出,使用了一种不同的方法来计算误差协方差矩阵。它不使用(连续时间)黎卡提方程(Riccati Equations,形如。的一类非线性方程)或(离散时间)协方差传播和更新规律。关键的思想是基于一组特殊的样本点来估计误差协方差,这些点被称为。无迹卡尔曼滤波(Unscented Kalman Filter),最初由。点(Sigma Points),这些点直接通过原始非线性模型传播。无迹变换表示有三个特殊样本点的高斯分布,称为。

生活如此美好,致敬每一个热爱“热爱”的人! 1777

Benchmarking level generation: Go, Rust, Haskell and D (and now Scala).

原文:https://togototo.wordpress.com/2013/07/23/benchmarking-level-generation-go-rust-haskell-and-d/ 该文章的测试时间是2013,下面的测试数据不代表当前各语言的最新版本   其他文章参考: 系统级编程语言性能大PK的笑话-Go语言 http://my.oschina.net/chai201...

玄冬Wong 327

AI Agent开发大全第一课-AI是什么以及如何使用AI

近年来,人工智能的迅猛发展引发了广泛的关注,尤其是“大模型”这一概念越来越深入人心。大模型,顾名思义,通常指的是那些拥有大量参数、能够处理复杂任务的机器学习模型。与传统小模型相比,大模型在数据处理、信息理解和生成等方面表现更加出色。为了理解为什么现在的AI被称为大模型,我们需要深入探讨几个关键因素。立角色是指在提示词中清晰地界定交互双方的身份。明确用户希望模型扮演的角色,可以帮助模型更准确地理解上下文和用户需求。

打造全国最全的AI Agent开发知识领域的博客 1406

紧急应对量子计算威胁:Rust后量子加密前沿技术抢先看

应对量子计算威胁,掌握Rust加密算法新方向。本文介绍基于Rust的后量子加密实现,涵盖抗量子攻击的算法设计、高性能安全模块构建及在通信与区块链中的应用,兼具安全性与运行效率,值得收藏。

FuncFun的博客 682

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Python,Go, Rust 开发水稻产品品牌打造APP

需求 | Rust优势 | Go优势 | Python优势 || 设备控制 | 实时控制+低功耗 | 有限硬件支持 | 不适用 |- **设备控制**:使用 **tokio** + **embedded-svc**

2501_90802096的博客 843

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

rust游戏亮度怎么调亮点_大屏遇上蓝蜘蛛,Spyder 5 Pro实测游戏悍将大屏电竞显示器电竞...

自打来到张大妈家,看心情胡扯了几篇文章,估计是被贴上了“大迷瞪”的tag,几次测试的基本也都是电子产品。其实我细数一下我用上液晶显示器的时间还挺早的,要说那时候的LCD显示器用料真是实在,每台都超级重,比当时还很火的CRT相差不多。 前几年自用的显示器是一台LE24D3150,24寸16:9,1080P分辨率,100% sRGB, 77% AdobeRGB色彩空间,ΔE平均值1.02。无奈投身游...

weixin_39943678的博客 526

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

go 比java 做web开发_后端程序员一定要看的语言大比拼:Java vs. Go vs. Rust

后端程序员一定要看的语言大比拼:Java vs. Go vs. Rust发布时间:2020-08-17 14:51:48来源:ITPUB博客阅读:81作者:千锋Python唐小强这是Java,Go和Rust之间的比较。这不是基准测试,更多是对可执行文件大小、内存使用率、CPU使用率、运行时要求等的比较,当然还有一个小的基准测试,可以看到每秒处理的请求数量,我将尝试对这些数字进行有意义的解读。为了尝...

weixin_29323551的博客 7398

http服务器_http服务器性能大PK

最近对modern c++ http server--cinatra做了一点性能优化,优化之后做了性能测试,顺便也对比了其它一些常用的http服务器的性能,选择了一些常用的http服务器:java(netty和tomcat), go(beego), .net core3.1, rust(actix-web)的http server。想看看cinatra和其他http server的性能相...

weixin_39956009的博客 778

服务器http性能,http服务器性能大PK

最近对modern c++ http server--cinatra做了一点性能优化,优化之后做了性能测试,顺便也对比了其它一些常用的http服务器的性能,选择了一些常用的http服务器:java(netty和tomcat), go(beego), .net core3.1, rust(actix-web)的http server。想看看cinatra和其他http server的性能相比如何。测...

weixin_32384723的博客 674

Helix 多光标编辑器快速上手:三分钟跑起来,把多光标用明白

Helix 是一款用 Rust 写的多光标模态编辑器:语法高亮、补全、跳转定义开箱即用,不用装一堆插件。如果你受够了在 Vim 里敲插件配置、又在 IDE 里嫌键盘被鼠标抢戏,这篇指南就是为你写的。 ## 三分钟安装并运行 Helix 先克隆仓库: ```bash git clone https://gitcode.com/GitHub_Trending/he/helix ``` 从源码构

gitblog_00410的博客 434

riscv-opcodes完全指南:从指令编码到RISC-V开发必备工具

**riscv-opcodes** 是RISC-V生态系统中至关重要的开源工具,它提供了完整的RISC-V指令集编码定义和自动化生成能力。无论你是RISC-V初学者还是资深开发者,掌握这个工具都将极大提升你的开发效率。本文将为你详细介绍riscv-opcodes的核心功能、使用方法和在RISC-V开发中的实际应用场景。 ## 🔍 什么是riscv-opcodes? **riscv-opcod

gitblog_00770的博客 1045
上一篇: Rust语言解面试题1
下一篇: Go 语言解面试题1
未来之眼
博客等级 码龄19年 13粉丝 21原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值