七月份是什么季节| 梦到伟人有什么兆头| 死库水什么意思| 橄榄菜长什么样子图片| 2009年是什么生肖| 耳朵上有痣代表什么| 中指是什么意思| 西瓜什么季节成熟| 止血敏又叫什么名| 下午四点多是什么时辰| 腹胀挂什么科| 1988年出生是什么命| 喝莓茶对身体有什么好处| 痔疮手术后可以吃什么水果| 焦虑症有什么症状| bid什么意思| 子宫颈肥大有什么危害| 小白脸什么意思| 叶凡为什么要找荒天帝| 百年好合是什么生肖| dpa是什么意思| 吃什么对肝脏有好处能养肝| 娃娃脸是什么意思| 什么牌子的沐浴露好| 泥淖是什么意思| 猪跟什么生肖配对最好| 尿道炎是什么原因引起的| 前期怀孕有什么症状| 梦见小女孩是什么预兆| 大地色眼影是什么颜色| 墨绿的什么| 频发室性早搏是什么意思| 胸闷出汗是什么原因| 藿香正气水有什么功效| 尿蛋白高不能吃什么食物| 人体最大器官是什么| 全身发麻是什么原因引起的| 怎么知道自己适合什么发型| 为什么嗓子总有痰| 柿子和什么不能一起吃| 一个马一个襄念什么| 手掉皮是缺什么维生素| 脚心疼是什么原因| hipanda是什么牌子| 锁阳泡酒有什么功效| 怀孕皮肤变差什么原因| 常识是什么意思| 大便溏薄是什么意思| 迪拜货币叫什么| 凤毛麟角是什么生肖| 三天不打上房揭瓦的下一句是什么| 牛肉跟什么炒好吃| 今天农历什么日子| 男人趴着睡觉说明什么| 唱反调是什么意思| 肾虚是什么原因| 188是什么意思| 头孢有什么作用| 植物神经紊乱挂什么科| 柱镜是什么| 一开车就犯困是什么原因| 忽然流鼻血是什么原因引起的| 本命年为什么要穿红色| 梦到和老公吵架是什么意思| 纤维瘤挂什么科| 新生的什么| 腰椎间盘突出挂什么科| 王京读什么| 孕妇待产需要准备什么| 蜻蜓吃什么食物| 什么季节补钙效果最好| 经常不吃晚饭对身体有什么影响| 睡不着觉吃什么药| 什么叫生酮饮食| 低血压对身体有什么影响| 为什么锻炼后体重反而增加了| 眉头长痘痘是因为什么原因引起的| 狮子座女和什么座最配| 生发吃什么食物好| 推特是什么意思| qp是什么牌子| 足三里在什么位置| 庙是什么意思| 牙套脸是什么样| 变蛋是什么蛋| 什么品牌蓝牙耳机好| 宫颈糜烂吃什么药| 心慌吃什么药能缓解| 遭罪什么意思| 给女生送礼物送什么好| 心路历程是什么意思| 牙疼是什么病的前兆| 榴莲什么季节成熟| 当你从我眼前慢慢走过是什么歌| 解惑是什么意思| 1月20是什么星座| 什么价格| 舌头起泡是什么原因引起的| 2044年是什么年| 考试前吃什么早餐| 梦见死人的场面是什么兆头| 查处是什么意思| 公主切适合什么脸型| e代表什么| 区委常委是什么级别| 2岁属什么生肖| 玮五行属什么| 天蓝色配什么颜色| 广西有什么特产| 地什么人什么| 鸟在电线上为什么不会触电| 怀孕初期需要注意些什么| 胃胀气适合吃什么食物| 甲鱼喜欢吃什么| 如履薄冰是什么意思| 混剪是什么意思| 说话鼻音重是什么原因| 胆囊切除后可以吃什么水果| 草果在炖肉起什么作用| 艾滋有什么症状| 桃子有什么功效| 下家是什么意思| 什么情况要做支气管镜| 男人蛋疼是什么原因| 女生为什么会流白带| 戍是什么意思| 女命带驿马是什么意思| 肉刺用什么药膏能治好| 日什么月什么| 男同是什么意思| 喝水牙疼是什么原因| 电压mv是什么意思| 梦见杀人是什么预兆| 金字旁加匀念什么| 什么叫比例| 淋巴在什么部位| 白癜风有什么危害| 肾上腺素有什么用| 女人40不惑什么意思| 吃紧急避孕药有什么副作用| 包皮过长挂什么科| 洗衣粉和洗衣液有什么区别| 眼压高滴什么眼药水| 什么叫伪娘| 什么于怀| 肌酐什么意思| 什么药吃了会产生幻觉| 血小板偏高是什么原因| 做ct挂什么科| 北极和南极有什么区别| 锁骨疼挂什么科| 庆字五行属什么| 大腿前侧肌肉叫什么| 什么是潮热| 白细胞计数偏高是什么原因| 吃深海鱼油有什么好处和坏处| 屋尘螨是什么东西| rococo是什么牌子| 神经外科和神经内科有什么区别| 马加其念什么| 一代宗师是什么意思| 塞是什么意思| 产褥热是什么病| ym是什么衣服品牌| 多春鱼为什么全是籽| 1975年属什么| 熊猫为什么会成为国宝| 塔克是什么食物| 喝什么可以降血压| u盘什么牌子好| 肌肉拉伤吃什么药| 什么的鼻子| 肾湿热吃什么中成药| 腹泻拉稀水是什么原因| 头重脚轻是什么生肖| 清朝是什么时候灭亡的| 何方神圣是什么意思| 氧化铜什么颜色| 盍是什么意思| 发烧什么症状| 什么人容易得骨肿瘤| 痛风吃什么药最好| 天蝎座男生喜欢什么样的女生| 奎宁是什么药| 安全监察是一种带有什么的监督| 什么不得| 京剧红色脸谱代表什么| 股骨头坏死挂什么科| 被动什么意思| 茉莉花什么时候开花| 骷髅是什么意思| 11点多是什么时辰| 腿为什么肿| 腰椎穿刺是检查什么的| 驻京办是干什么的| burgundy是什么颜色| 尿尿疼吃什么药| 起痱子是什么原因| 势均力敌什么意思| 大学硕士点是什么意思| 摩羯座是什么星座| 风热感冒 吃什么| 非赘生性囊肿什么意思| 左耳烫代表什么预兆| 血红蛋白偏高是什么原因| 自主神经功能紊乱吃什么药| 推什么出什么| 坦诚相待下一句是什么| 神经衰弱是什么| 小便带血是什么原因女性| 糖尿病人晚餐吃什么最好| 青少年梦遗有什么危害| 狗拉肚子吃什么药| ppl是什么意思| 指征是什么意思| 腿浮肿是什么原因引起的| 什么蔬菜| 木隶念什么| 八月三十日是什么星座| 医美是什么专业| 脑疝是什么原因引起的| 晒太阳对身体有什么好处| 检查过敏源挂什么科| 睡觉掉床下是什么预兆| 血红蛋白升高说明什么| 舌头有裂痕是什么原因| 五十坐地能吸土是什么意思| 天上九头鸟地上湖北佬是什么意思| 脑供血不足食补吃什么| 买手机上什么网| 4.15是什么星座| 猪油用什么容器装好| 尊字五行属什么| 梦见摘桃子是什么意思| 性状是什么意思| 例假吃什么水果好| 尼龙属于什么材料| 毛豆炒什么好吃| 看静脉曲张挂什么科| 男生下面长什么样| 水分是什么意思| 浑身疼痛什么原因| 肠系膜淋巴结炎吃什么药最有效| 恩怨是什么意思| 1ph是什么意思| 农历5月17日是什么星座| 殊荣是什么意思| 人的祖先是什么| 狗下崽前有什么征兆| 精益求精的意思是什么| 代沟什么意思| 肠套叠是什么意思| 七月初七是什么生肖| 什么的舞台| 香砂是什么| 377是什么| 缺钾有什么症状| 哺乳期吃什么水果| 小儿疳积是什么症状| 什么水果清热解毒去火| 月经来了同房会导致什么后果| 吃什么解辣| 怀孕喝什么牛奶好| 阴枣是什么| 百度

This article is more than 1 year old

“速滑传奇”武大靖4月1日来到长隆挑战“滑道传奇”

The snag: This programming language is safe and efficient, but hard to learn, impacting productivity

百度 七部门在公告中表示,代币发行融资本质上是一种未经批准非法公开融资的行为,涉嫌非法发售代币票券、非法发行证券以及非法集资、金融诈骗、传销等违法犯罪活动。

Re:Invent Here at a depleted AWS Re:invent in Las Vegas, Rust Foundation chairwoman Shane Miller and Tokio project lead Carl Lerche made the case for using Rust to minimize environmental impact, though said its steep learning curve made the task challenging.

Miller is also a senior engineering manager for AWS, and Lerche a principal engineer at the cloud giant.

How can Rust save the planet? The answer is that more efficient code requires fewer resources to run, which means lower energy usage in data centers and also in the environmental impact of manufacturing computing equipment and shipping it around the world.

Shane Miller and Carl Lerche speak on Rust efficiency and safety at AWS Re:invent

Shane Miller and Carl Lerche speak on Rust efficiency and safety at this year's AWS Re:invent in Las Vegas

“Data centers consume … 1 per cent of all worldwide energy,” said Miller, though adding that the total energy consumed had changed little in ten years, thanks to technology advances and the fact that cloud tends to reduce the proportion of idle resources.

The second part of the argument is that Rust is among the most efficient programming languages. The source quoted for this is a 2017 paper [PDF] that measured the performance, memory usage, and energy efficiency of 27 programming languages, and placed C as most efficient, but Rust close behind with just three per cent more energy use. Java uses nearly double the energy, C# over three times, and Python over 75 times as much, according to the study.

Languages ranked by energy efficiency, according to a 2017 research project

Languages ranked by energy efficiency, according to a 2017 research project

This is an AWS conference after all

The research is problematic, as several at the session on Monday observed, not because of lack of care, but because languages have many implementations and compilers, some of which are more efficient than others. It is also odd to find TypeScript 10 times less efficient than JavaScript, considering that it compiles to JavaScript and similar code can be written in both.

Still, this is not all that important since there is no doubting Rust’s efficiency, as a systems language, and Miller and Lerche did not rely solely on this research. Miller also referenced case studies from Discord and from Tenable that showed huge efficiency gains.

In the Tenable case, a JavaScript component was rewritten in Rust and achieved a 50 per cent improvement in latency, a 75 per cent reduction in CPU usage, and a 95 per cent reduction in memory usage. “It’s kind of crazy,” said Miller. “It’s substantial savings, not just in infrastructure, it translates into savings in energy.”

Garbage-collecting languages are inherently less efficient, said Lerche. Garbage collection is a common means of automating memory management and works by identifying objects that are out of scope and freeing their memory.

“The garbage collector is going to have to pause the process to do the garbage collection pass. And when it's paused … the service is not able to respond anymore to requests,” he said. This means languages such as Java, C# and JavaScript can never be as efficient and performant as C and Rust.

Why not just use C and C++? The reason is security and memory-related bugs, said Lerche, quoting research that “70 per cent of all high severity security vulnerabilities in software in C and C++ are due to [lack of] memory safety.”

Rust is revolutionary, he said, because “Rust is the first mainstream programming language that is efficient while maintaining memory safety.” Lerche explained how Rust achieves memory safety by using the idea of ownership, based on a concept called Affine logic, where each object has one and only one owner at a time.

Ownership rules are checked at compile time, so there is no runtime overhead. Concurrency too is easier and safer in Rust than in C or C++, leading to further performance and efficiency gains.

It seems too easy. All the developer and IT community needs to do is to migrate to Rust and code will run faster and more securely, world energy use will drop, and AWS can close half its data centers (though we did not hear this last idea during the session).

Big but

“But,” said Miller, “if we’re going to reach the carbon reduction goals … we’re going to need most new software written in energy efficient languages like C or Rust. But Rust does have a somewhat notorious learning curve … we are seeing that adoption but we are not seeing it everywhere.

Rust does have a somewhat notorious learning curve … we are seeing that adoption but we are not seeing it everywhere

"Where I’m seeing Rust growing the most is where there’s an outsized performance gain, so high volume database services, also in small resource-constrained environments like IoT and embedded. We’re not seeing it so much in: you’re writing a back-end for a JavaScript app.”

The problem is that coding in Rust is hard. One reason why languages like Java, JavaScript, and Python have seen such wide adoption is that programmers can become productive more quickly.

This then is the elephant in the room, “the famous learning curve,” said Miller. In a recent survey, “of the engineers who said they were no longer using the language, 55 per cent cited learning and productivity as their reason for abandoning it. Experienced engineers require three to six months of study supported by a subject matter expert before they are productive with the language.”

Is there any possibility of reducing the learning curve? “Part of the challenge with the learning curve is not so much that it is difficult to use, but there are gaps in the developer experience, so we’re seeing feedback from engineers who are coming from languages like Java and trying to use Rust that they’re uncomfortable with the debugger experience,” Miller said, in answer to our question. “The performance profiling tools are not the same as they are accustomed to. And that’s an area we are investigating.”

“Rust came, historically, as a replacement for C++," Lerche added. "It was targeted at that use case. But what we’re finding is that there’s a lot of application in a higher level.

"If you’re coming to build a service, you go through the Rust book which is very thorough and you will get into lifetimes and traits and trait patterns and all these concepts that are part of the language but aren’t necessary to write a service.” There are plans, he said, to write simplified documentation that is “what you need to know to write a service.”

Although such initiatives will be helpful, it is difficult to envisage how Rust can become easy enough to learn that business application developers will be able to switch from Java or JavaScript, or C# or Python, when they have business problems to solve and can do more quickly in those other languages.

Further, lower down the computing stack the code probably is written in Rust or C or C++, because when it comes to the Linux kernel, or the core of a database engine, high performance and efficiency is already a requirement.

That said, the key point, that inefficient software is expensive for the environment as well as for the customer, was well made, and something to which the IT industry pays insufficient attention, even if Rust is only a small part of the solution. ?

More about

TIP US OFF

Send us news


Other stories you might like

阴道瘙痒吃什么药 应激是什么意思 餐巾纸属于什么垃圾 白细胞高是什么病 紧急避孕药有什么副作用
火什么银花 醴什么意思 什么植物最好养 为什么邓超对鹿晗很好 美国为什么不敢打朝鲜
病毒的繁殖方式是什么 两情相悦什么意思 年底是什么时候 舒字五行属什么的 喉咙痛有什么好办法
猎奇什么意思 公分是什么单位 综艺是什么意思 tp是什么 六合是什么意思
夏天为什么不能喝中药aiwuzhiyu.com 多动症是什么原因造成的hcv8jop0ns8r.cn 物尽其用什么意思hcv8jop5ns6r.cn 神龙摆尾什么意思hcv7jop4ns5r.cn 多梦是什么原因造成的hcv9jop3ns3r.cn
割伤用什么药愈合伤口hcv8jop6ns8r.cn 腿膝盖后面的窝窝疼是什么原因hcv8jop0ns3r.cn cpv是什么病毒hcv9jop6ns2r.cn 424是什么意思liaochangning.com 单核细胞偏高是什么原因hcv7jop9ns2r.cn
天津有什么好玩的地方adwl56.com 什么中药治肝病最好hcv8jop8ns9r.cn 改年龄需要什么手续kuyehao.com 尿路感染是什么原因引起的hlguo.com 投诉快递打什么电话hcv9jop7ns4r.cn
什么情况下吃救心丸hcv9jop0ns6r.cn scr是什么意思hcv8jop2ns1r.cn 三什么一什么hcv9jop5ns1r.cn 膳是什么意思hcv8jop4ns3r.cn 排尿困难吃什么药好hcv9jop0ns1r.cn
百度