本文作者是Go社区的贡献者之一,主要致力于Go工具链的优化和特性的支持。本文介绍的Go中Address Sanitizer的特性是由本文作者实现的。
不平凡的2020年马上就要结束了,又到了总结的季节。若要总结IT行业年度关键字,我相信"Arm"一定会榜上有名,因为每过一段时间,总会有与"Arm"相关的消息占据新闻头条。这不,又有关于Arm生态相关的好消息传来。在老牌开源数据库MariaDB社区于近日在其官方博客总结了2020年MariaDB在Arm支持和性能优化方面取得的最新进展(...
在part 1中,我们讲过vitess本身不支持arm,并叙述了如何解决arm上Vitess的大部分依赖问题。本文将讲述在arm机器上如何编译vitess。按照本文方法所编译的vitess可以正常的运行vitess官方的local本地集群实例。
VPP(Vector Packet Processing)是Cisco的FD.io项目组的核心开源项目,它实现了在用户空间的快速转发平面,解决了传统标量报文处理过程中遇到的I-cache 不命中和I-cache抖动等问题。VPP具有高性能、模块化、可扩展等优势,且包含了二层交换、三层路由、ACL、IPsec等丰富的功能特性。
Vitess为大规模MySQL集群实例管理/扩展/部署提供了解决方案。它结合了NoSQL的可扩展性和MySQL的很多重要功能,并且在裸机,公有云和私有云上都可以运行。有关其设计动机和愿景详见vitess/doc/Vision.md。Vitess可以解决下面的问题:
CI(Continuous Integration)让我们可以不断对小的代码修改进行部署,测试,而不需要等代码有大量修改后才一次性部署,测试验证,目的是保证开发过程中代码的质量。TravisCI 是一个托管的分布式CI,用来构建并测试托管在Github上的软件项目,它能轻松同步你的Github项目,并按你的配置要求分配一台虚拟机/容器进行部署,...
随着云计算的普及,越来越多的公司、组织及个人开发者开始将业务转移至云服务提供商(如Ali,GKE,Amazon)。然而,在云计算带来便利的同时,也给开发团队带来了不小的挑战。比如,如何将传统单一应用拆分成多个微服务,实现各个微服务之间的松耦合,高内聚,如何实现各个微服务的通信,同步等。Service Mesh技术很好的...
1 简介本文旨在介绍Arm NEON技术,希望NEON初学者在阅读本文后能很快上手开始NEON编程。本文也会告诉读者包含更详细信息的文档索引。
SVE(可伸缩矢量扩展)介绍SVE(Scalable Vector Extension)是arm AArch64架构下的下一代SIMD指令集,旨在加速高性能计算,SVE引入了很多新的架构特点, 比如• 可变矢量长度• 每通道预测• 聚集加载和分散存储• 横向操作本文将对SVE做个基本介绍。1. SIMD指令发展史 intel vs arm从上图我们可以看出,SIMD指令总体趋势是向着...
GraalVM Native Image是由Oracle Labs开发的一种AOT编译器,支持基于JVM的高级语言,如Java, Scala, Clojure, Kotlin。Native Image以Java bytecode作为输入,将所有应用所需的class依赖项及runtime库打包编译生成一个单独可执行文件。具有高效的startup及较小的运行时内存开销的优势。
Arm相关的技术文档资料下载汇总专栏,欢迎收藏关注点赞。
低成本Arm微服务器开发平台“云芯1号”教程及应用,欢迎关注
定期发布Arm相关软件信息,微信公众号 ArmSWDevs,欢迎关注~
Arm相关的技术博客,提供最新Arm技术干货,欢迎关注
最有深度的半导体新媒体,实讯、专业、原创、深度,50万半导体精英关注。专注观察全球半导体最新资讯、技术前沿、发展趋势。
1 简介ARM NEON编程主要有两种最常用的方式手写汇编和intrinsics。本文将对比NEON汇编与NEON intrinsics编程的优缺点。
1 简介读过上一篇文章“ARM NEON快速上手指南”之后,相信你已经对ARM NEON编程有了基本的认识。但在真正利用ARM NEON优化程序性能时,还有很多编程技巧和注意事项。本文将结合本人的一些开发经历,介绍NEON编程中的一些常见优化技巧,希望能对用户在NEON实际开发中有些借鉴意义。2 NEON 优化技术在利用NEON优化程序时,有...
介绍Arm相关的开源软件。