首页 文章 精选 留言 我的

精选列表

搜索[专家兼容测试],共10000篇文章
优秀的个人博客,低调大师

谷歌从 IBM 挖走芯片专家 Anthony Saporito,推进自研 CPU

据外媒 The stack 介绍,谷歌已从 IBM 挖走 Anthony Saporito 担任其芯片设计首席架构师,领导“下一代”CPU 的开发。 Saporito擅长分支预测、指令获取和缓存设计,拥有115 项专利。他在 IBM 拥有 21 年的芯片设计经验,曾担任多个 Z System 芯片的首席架构师,为几代 Power 和 Z System 设计做出了贡献,最近的成功项目是 IBM 于 2021 年 8 月推出的 7nm Telum,这是 IBM 首款具有 AI 推理加速功能的芯片。 没人知道 Saporito 所说的下一代谷歌 CPU 到底是什么。但谷歌确实一直在半导体上发力,去年聘请英特尔资深人士 Uri Frank 担任服务器芯片设计工程副总裁,以及挖来英特尔资深片上系统设计工程师 Alex Gruzman ,并安排其在加利福尼亚、以色列和印度组建团队。 谷歌云也并不掩饰其增加定制芯片工作的计划,谷歌云工程副总裁 Amin Vahdat 在 2021 年 3 月在博客中写道。:“既然摩尔定律不再为每个人提供快速改进,定制芯片是提高性能和效率的一种方式。谷歌的计算正处于一个重要的转折点。迄今为止,主板一直是我们的集成点,我们将来自不同供应商的 CPU、网络、存储设备、定制加速器、内存组合成一个优化的系统。但这还不够:为了获得更高的性能并减少功耗,我们的工作负载需要更深入地集成到底层硬件中。“ Uri Frank 最近的社交帖子也表明,人工智能推理硬件是谷歌的优先事项。不过,自研芯片对谷歌来说也不是新鲜事,例如谷歌的“Argos”,一种称为视频编码单元 (VCU) 的 ASIC,已经取代了谷歌数据中心的大量 x86 CPU。

优秀的个人博客,低调大师

专家齐谈:疫情过后,5G将如何加速跑

【金融特辑】光大银行科技部DBA女神带你从0到1揭秘MGR 本是除旧迎新,回家过年的日子。一场疫情却打破了原本的安详。全国人民全力抗击,经过近两个多月的努力,疫情得到了一定程度的控制。在这场抗疫过程中我们见证的不仅是医务人员的奉献精神,也见证了信息通信行业所发挥的重要作用。 时值5G发展的关键时期,此次疫情会对中国的5G发展带来怎样的影响?日前,多位嘉宾在GSMA中国周线上特辑中表示,疫情对5G影响有限,疫情过后5G将会在社会经济中起到更加重要的推动作用。 5G在疫情中发挥了前所未有的作用 在这场抗疫过程中,移动通信和5G技术为这场疫情战役提供了前所未有的武器。 中兴通讯CEO徐子阳指出,5G网络超大带宽、低时延、高可靠、海量链接的特性,不仅保障了网络的快速传输,还催生了5G行业应用的进一步的发展,加速了5G的应用和普及。中兴通讯积极响应一线的需求,为武汉雷神山医院搭建了5G网络,稳定快速的网络质量实现了上万人的语音监控的场景。 在湖北、重庆、四川、贵州、江西等地,中兴通讯携手运营商一起开展了5G远程会诊移动诊疗业务;助力中国移动线上家庭的云课堂业务,快速引入了海量优质的教育资源;融合智能视频、AI热成像发布了智能云视频运行防控解决方案;在防疫检查的关键时期,安装了智能感知设备,实现自动快速的感知检测,减少了人工的投入,降低了感染、风险和成本。后续中兴通讯将进一步优化和改进,把新媒体、远程医疗、远程教育等5G行业创新应用,全部部署到抗疫工作中,让5G在不同行业、不同领域发挥更多的作用。中兴通讯内部也使用了自有的云服务的集中办公系统,接近2万多的员工,通过云桌面能够实现跟办公室一样的办公效率。他认为这为后续数字化转型提供了丰富的实践经验。 紫光展锐CEO楚庆称,5G在这次疫情当中展示的能量,不仅支撑了应急通信,还大规模的节省了医疗资源。通过5G网络,海量的信息得到了及时的传递,为医疗资源的最大限度的发挥,做出了非常突出的贡献。 无可厚非,此次疫情也影响到了人们的正常生活和学习,楚庆称,只有社会更加智能才能满足人类未来的需求。 海尔集团总裁周云杰也指出,在新冠肺炎疫情特殊时期,以5G云化、网络安全为代表的信息技术,成为抗疫和复工的有力支撑。 疫情结束后,5G会加速发展 这次疫情对全球、对大部分企业来说都是一个非常大的挑战,在应对疫情的过程中大部分用户都清楚地认识到信息化的重要性,如在线办公尤其对于企业级的在线办公,需要更强大的网络支持。田溯宁认为这次疫情对5G应用和5G建设有极大的促进作用。 他介绍称,SARS时期,疫情促进了中国B2C的发展。而这次他认为会大规模促进中国B2B的发展。云视频、云办公各种各样的行业应用变成越来越重要,网络起到了不可替代的作用。 田溯宁认为,疫情之后中国5G在的发展会更加加速,行业数字化、云化、在线化会得到更有利的发展。 楚庆也指出,疫情之后,5G发展的速度会比预料中要快得多。 疫情过后,5G将如何加速跑 对社会及行业来说,本次疫情对中国各行各业的短期内都造成了一定的冲击。徐子阳称,就ICT领域来看,虽然短期内对器件、终端、设备制造等线下生产装配有一定的影响,但以云计算等为主的通信基础设施得到了提升,直接推动各行各业的数字化转型的5G的场景部署。 从长远来看,本次疫情刺激了教育、医疗、工业制造、物流等远程协同化分布法和非接触化的需求。政府对全社会信息的采集、传送、处理、应用和安全防护,也提出了更高的要求。徐子阳指出,在这种趋势下,要加大5G技术和应用两方面的持续创新,积极赋能各行各业的数字化转型,不断推动社会和企业的产品服务创新、运营创新,让5G真正成为社会发展的新引擎。 周云杰表示,疫情之下,不能只把眼光停留在当下,而应该思考如何在这场危机中寻找5G发展的新机遇,助力5G加速跑。对于海尔来说,已经把5G技术引入到生产、制造和应用的场景中,并通过5G+智慧家庭、5G+制造、5G+平台三大方案,实现了对生态品牌的超前布局。海尔将抓住发展新机遇做强平台,打造物联网时代下开放的新生态。 中国5G发展的机会和挑战 中国无疑已经成为全球5G的领导者之一,在行业发展方面领先全球。资料显示,未来5年全球移动运营商将在移动资本支出上投资约1.1万亿美元,其中中国将投资1800亿美元在5G上。那么就长远来看,中国5G发展的机会和挑战是怎样的呢? 田溯宁认为中国企业最重要的两点机会非常明确:一是,利用5G网络创造新型的行业应用,如5G与电力结合、与交通结合、与媒体结合;二是,在5G的时代,更好的实现云网一体化。 从挑战角度来讲,他觉得,过去大部分的中国企业都以应用为主,很多技术是以“拿来主义”为主,他坦言未来要建设繁荣的5G生态系统、建设强大的虚拟化和高可靠性的网络的过程中,核心的技术创新是重中之重。未来30年,中国应该以自己的本土创新推动全球实现信息化和数字化。

优秀的个人博客,低调大师

【Go专家编程】一文搞懂go.sum工作机制

为了确保一致性构建,Go引入了go.mod文件来标记每个依赖包的版本,在构建过程中go命令会下载go.mod中的依赖包,下载的依赖包会缓存在本地,以便下次构建。 考虑到下载的依赖包有可能是被黑客恶意篡改的,以及缓存在本地的依赖包也有被篡改的可能,单单一个go.mod文件并不能保证一致性构建。 为了解决Go module的这一安全隐患,Go开发团队在引入go.mod的同时也引入了go.sum文件,用于记录每个依赖包的哈希值,在构建时,如果本地的依赖包hash值与go.sum文件中记录得不一致,则会拒绝构建。 本节暂不对模块校验细节展开介绍,只从日常应用层面介绍: go.sum 文件记录含义 go.sum文件内容是如何生成的 go.sum是如何保证一致性构建的 go.sum文件记录 go.sum文件中每行记录由module名、版本和哈希组成,并由空格分开: <module> <version>[/go.mod] <hash> 比如,某个go.sum文件中记录了github.com/google/uuid 这个依赖包的v1.1.1版本的哈希值: github.com/google/uuid v1.1.1 h1:Gkbcsh/GbpXz7lPftLA3P6TYMwjCLYm83jiFQZF/3gY= github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= 在Go module机制下,我们需要同时使用依赖包的名称和版本才可以准确的描述一个依赖,为了方便叙述,下面我们使用依赖包版本来指代依赖包名称和版本。 正常情况下,每个依赖包版本会包含两条记录,第一条记录为该依赖包版本整体(所有文件)的哈希值,第二条记录仅表示该依赖包版本中go.mod文件的哈希值,如果该依赖包版本没有go.mod文件,则只有第一条记录。如上面的例子中,v1.1.1表示该依赖包版本整体,而v1.1.1/go.mod表示该依赖包版本中go.mod文件。 依赖包版本中任何一个文件(包括go.mod)改动,都会改变其整体哈希值,此处再额外记录依赖包版本的go.mod文件主要用于计算依赖树时不必下载完整的依赖包版本,只根据go.mod即可计算依赖树。 每条记录中的哈希值前均有一个表示哈希算法的h1:,表示后面的哈希值是由算法SHA-256计算出来的,自Go module从v1.11版本初次实验性引入,直至v1.14 ,只有这一个算法。 此外,细心的读者或许会发现go.sum文件中记录的依赖包版本数量往往比go.mod文件中要多,这是因为二者记录的粒度不同导致的。go.mod只需要记录直接依赖的依赖包版本,只在依赖包版本不包含go.mod文件时候才会记录间接依赖包版本,而go.sum则是要记录构建用到的所有依赖包版本。 生成 假设我们在开发某个项目,当我们在GOMODULE模式下引入一个新的依赖时,通常会使用go get命令获取该依赖,比如: go get github.com/google/uuid@v1.0.0 go get命令首先会将该依赖包下载到本地缓存目录$GOPATH/pkg/mod/cache/download,该依赖包为一个后缀为.zip的压缩包,如v1.0.0.zip。go get下载完成后会对该.zip包做哈希运算,并将结果存放在后缀为.ziphash的文件中,如v1.0.0.ziphash。如果在项目的根目录中执行go get命令的话,go get会同步更新go.mod和go.sum文件,go.mod中记录r 的是依赖名及其版本,如: require ( github.com/google/uuid v1.0.0 ) go.sum文件中则会记录依赖包的哈希值(同时还有依赖包中go.mod的哈希值),如: github.com/google/uuid v1.0.0 h1:b4Gk+7WdP/d3HZH8EJsZpvV7EtDOgaZLtnaNGIu1adA= github.com/google/uuid v1.0.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= 值得一提的是,在更新go.sum之前,为了确保下载的依赖包是真实可靠的,go命令在下载完依赖包后还会查询GOSUMDB环境变量所指示的服务器,以得到一个权威的依赖包版本哈希值。如果go命令计算出的依赖包版本哈希值与GOSUMDB服务器给出的哈希值不一致,go命令将拒绝向下执行,也不会更新go.sum文件。 go.sum存在的意义在于,我们希望别人或者在别的环境中构建当前项目时所使用依赖包跟go.sum中记录的是完全一致的,从而达到一致构建的目的。 校验 假设我们拿到某项目的源代码并尝试在本地构建,go命令会从本地缓存中查找所有go.mod中记录的依赖包,并计算本地依赖包的哈希值,然后与go.sum中的记录进行对比,即检测本地缓存中使用的依赖包版本是否满足项目go.sum文件的期望。 如果校验失败,说明本地缓存目录中依赖包版本的哈希值和项目中go.sum中记录的哈希值不一致,go命令将拒绝构建。 这就是go.sum存在的意义,即如果不使用我期望的版本,就不能构建。 当校验失败时,有必要确认到底是本地缓存错了,还是go.sum记录错了。 需要说明的是,二者都可能出错,本地缓存目录中的依赖包版本有可能被有意或无意地修改过,项目中go.sum中记录的哈希值也可能被篡改过。 当校验失败时,go命令倾向于相信go.sum,因为一个新的依赖包版本在被添加到go.sum前是经过GOSUMDB(校验和数据库)验证过的。此时即便系统中配置了GOSUMDB(校验和数据库),go命令也不会查询该数据库。 校验和数据库 环境变量GOSUMDB标识一个checksum database,即校验和数据库,实际上是一个web服务器,该服务器提供查询依赖包版本哈希值的服务。 该数据库中记录了很多依赖包版本的哈希值,比如Google官方的sum.golang.org则记录了所有的可公开获得的依赖包版本。除了使用官方的数据库,还可以指定自行搭建的数据库,甚至干脆禁用它(export GOSUMDB=off)。 如果系统配置了GOSUMDB,在依赖包版本被写入go.sum之前会向该数据库查询该依赖包版本的哈希值进行二次校验,校验无误后再写入go.sum。 如果系统禁用了GOSUMDB,在依赖包版本被写入go.sum之前则不会进行二次校验,go命令会相信所有下载到的依赖包,并把其哈希值记录到go.sum中。 参考文档 命令行帮助文档(go 1.14):$ go help module-auth Go 1.14 源码 赠人玫瑰手留余香,如果觉得不错请给个赞~ 本篇文章已归档到GitHub项目,求星~ 点我即达

优秀的个人博客,低调大师

阿里高级技术专家:研发效能的追求永无止境

扫描上述二维码或点我直达 免费领! 背景 大约在5年前,也就是2013年我刚加入阿里的时候,那个时候 DevOps 的风刚吹起来没多久,有家公司宣称能够一天发布几十上百次,这意味着相比传统软件公司几周一次的发布来说,他们响应商业需求的能力可以甩后者几条街,而且这差距根本不是加班能赶上的。今天的 AliExpress 技术团队小几百人的规模,可一天发布几十次也已经司空见惯了,这主要得益于三个方面: 非常彻底地微服务化,拆分粒度很细,且旗帜鲜明地反对重二方库。 阿里集团整体的运维标准化,尤其是 Docker 技术的全面覆盖。 AliExpress SRE 团队不断努力保证稳定性。 然而,效能这个东西,你永远不会说:“够了,够快了”,尤其是在当下的消费型社会,人人都是消费者,而消费者恨不得脑子里的欲望刚闪现出来,你的商品或服务瞬间就到他面前。况且,

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册