第 80 期:何日可开眼看世界
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
@Author : Lewis Tian (taseikyo@gmail.com)
@Link : github.com/taseikyo
@Range : 2024-09-15 - 2024-09-21
| |
本文总字数 7632 个,阅读时长约: 13 分 51 秒,统计数据来自:。
合并两个有序数组
移除元素
Apple M1与英特尔芯片:两个强大处理器的比较
ARM 与 x86:有何区别?
何日可开眼看世界
题目
给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。
请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。
注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。
解答
数据:0ms 100%; 4.08MB 45.05%
题目
给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素。元素的顺序可能发生改变。然后返回 nums 中与 val 不同的元素的数量。
假设 nums 中不等于 val 的元素数量为 k,要通过此题,您需要执行以下操作:
更改 nums 数组,使 nums 的前 k 个元素包含不等于 val 的元素。nums 的其余元素和 nums 的大小并不重要。
返回 k。
解答
数据:0ms 100%; 3.87MB 96.50%
1、了解 M1
大多数业内人士已经知道 M1 是什么:片上系统,简称 SoC。但是,一般人可能不明白 SoC 和常规处理器之间的区别是什么。
简而言之,SoC 是一种集成电路,其所有组件都位于单个芯片上。这包括 CPU、GPU、输入/输出端口和块、缓存、内存和存储。通过这种精简的结构,SoC 可以高效地执行多种功能。因此,它或多或少可以执行信号处理、人工智能、无线通信等所有方面的工作。
另一方面,大多数台式机和笔记本电脑不使用 SoC 来处理信息或执行任务。通常,主板会在平台的不同部分容纳各种组件。计算机通常具有用于内存、存储、CPU 和 GPU 的位置和组件。
2、利弊
SoC 的好处是它们可以更有效地使用功率。此外,由于其所有部件都集中在一个小芯片中,因此它们占用的硬件空间也更少。这就是您在移动设备上发现的处理器都使用 SoC 的 原因——因为几乎没有移动空间。
然而,SoC 的缺点是各种组件是不可替代的。因此,您无法升级任何组件,包括使计算机变得灵活和模块化的存储器或 RAM。此外,SoC 通常无法像强大的或台式机专用处理器那样执行任务。这就是为什么大多数制造商仍然不使用移动处理器来为他们的计算机供电的原因。
3、主要差异
1、CPU架构
M1 芯片与 Intel 处理器的主要区别在于 M1 基于 ARM 架构。ARM 处理器通常更轻巧、更节能,非常适合智能手机和移动设备。此外,它们是理想的处理器类型,可以在不需要风扇的情况下最大限度地减少过热。
但是,像 M1 芯片这样的 ARM 处理器需要全新的软件。
2、软件、桌面应用程序和仿真
软件也是 M1 芯片在科技界引起如此轰动的最大原因之一。基于 ARM 的处理器运行软件是如何为桌面处理器制作和优化的?Apple 选择的解决方法是通过仿真运行桌面软件——它以出色的方式通过。这绝非易事,考虑到大多数通过仿真运行的事情都不会运行得那么快或那么顺利。
另一方面,由于 M1 是移动处理器,新 Mac 也可以运行 iOS 应用程序。因此,有更多的交叉兼容性,进一步模糊了移动和桌面之间的界限。当然,您无法获得与基于 Intel 的设备的这种交叉兼容性。然而,微软似乎确实在推动 Windows 11 上的 Android 应用程序。
4、性能比较
1、CPU 基准分数
M1 在单核性能方面提供了 1701 分,在多核方面提供了 7359 分。与英特尔 999 的单核得分相比,速度提高了 70%,而后者的多核得分为 4921,速度提高了 50%。
5、是什么让 Apple M1 芯片如此之快?
许多现代智能手机和平板电脑的运行速度甚至比台式电脑还要快,这已经不是什么秘密了。但有人可能会争辩说,原因在于软件,因为移动操作系统并没有那么复杂。
由于 M1 在台式机和笔记本电脑中的运行速度一样快,您可能想知道为什么会这样。毕竟,M1 并不是第一个安装在笔记本电脑中的基于 ARM 的处理器。事实上,微软是第一个冒险尝试的人,在 Surface Pro X 中添加了高通芯片。然而,模拟并不完全顺利——也许这就是答案。
从表面上看,Surface Pro X 内部的 M1 和高通芯片看起来很相似。它们都使用 4+4 内核设计,将高功率和低功率内核添加到组合中。此外,两者都有 16 GB 的 RAM(至少有些 Mac 是这样),而且它们都是 SoC。
但是,它们的不同之处在于仿真。Apple 使用 Rosetta 2 — 一种巧妙优化的模拟器,它是在 M1 Mac 上运行英特尔应用程序的秘诀。另一方面,M1 的 Windows 版本也使用模拟器。但是,体验极其缓慢、滞后,并且有很多限制。
1、x86 和 ARM 处理器
许多 IT 人士都非常熟悉 x86 处理器,因为它是大多数计算机和服务器硬件中使用的处理器类型。从架构角度来说,x86 系统中的硬件组件(如声卡、显卡、内存、存储器和 CPU)都是相互独立的。大多数组件都有单独的芯片,称为控制器。我们可以对这些组件进行更改或扩展,而不会影响连接性或整个硬件平台。
而 ARM 处理器没有单独的 CPU。相反,处理单元与其他硬件控制器位于同一物理载板上,形成一个集成电路。此外,与英特尔或 AMD CPU 不同,没有所谓的 ARM 处理器制造商。相反,Arm Holdings 公司将芯片的设计方案授权给其他硬件制造商,然后这些制造商将 ARM 处理器芯片整合到他们的硬件设计中。与传统基于 x86 的计算机不同,ARM 芯片不可互换使用,并且具有高度的应用特定性。这些处理器在所谓的系统级芯片(SoC)中一起制造的。
2、RISC、CISC 及其对开发的影响
程序员元老之间一场很久之前的争论导致了计算机科学中两种主要理念之间的分歧:究竟是简化程序员的工作,还是简化微处理器的工作。 要想使用计算机执行任何高效的操作,操作系统及其执行的程序需要与中央处理器(CPU)以及其他硬件(如内存、存储器和网卡)进行交互。CPU 发挥着在操作系统(和上面运行的程序)与这些硬件之间进行调解的作用。为了简化程序员的工作,CPU 有一组预定义的操作和计算,称为指令集或 ISA(指令集架构)。操作系统及其执行的程序(均由程序员编写)依赖这些指令来执行低层功能,例如:
CPU 与硬件(内存、存储器、网络等)之间的交互
算术函数(加法、减法等)
数据操作(二进制移位等)。
最初的 x86 CPU 拥有(并且现在仍然拥有)非常丰富的指令集。一条指令可以完成整个计算(如乘法)或将一块数据直接从内存中的一个位置移动到另一个位置。这听起来没什么大不了,但在内存中的不同位置之间进行乘法计算和移动数据确实需要在低层执行大量指令。对于 x86 计算机,这一系列复杂的操作可以在一个周期内完成。具有这种类型指令集的处理单元被称为复杂指令集计算机(CISC)。
然而,CISC 计算机中的指令如此强大,也意味着它需要更多的晶体管,从而会占用空间并消耗能量。
为了探索能效和简化 CPU 架构中指令集的方法,1980 年代初,人们发起了一系列项目。研究人员发现,在现实中,大多数计算机仅使用 CISC 计算机所提供的大量指令中的一小部分。最终,精简指令集计算机(RISC)处理器设计应运而生。RISC 处理器也有一个指令集,但其中每条指令仅代表一个能耗较低的简单操作。这就使汇编语言程序员的工作变得更加复杂,但却简化了处理器的工作。利用 RISC 处理器和先进的 RISC 计算机,可以通过运行多条指令或通过将复杂工作推给编译器(而不是 CPU 内核)来执行复杂操作。
其中离不开一些权衡与取舍。x86 CPU 往往具有非常快的计算能力,并且在编程和指令数量方面会更加清晰或简单,但它的代价,就是更大、更昂贵且具有大量晶体管的芯片。ARM 处理器对于某些类型的操作而言可能非常快,但单个指令的重复循环可能会减慢它的速度,这是因为操作更为复杂,并且定义和执行操作的更多工作被推给了编程(和程序员),而不是指令集。
此外,鉴于以上差异,我们可能难以计算其 MIPS(每秒百万条指令,一种对计算机原始处理能力的常用度量),因为不同类型的处理器在执行同一活动时需要用到不同的指令集。
3、ARM 与 x86 的能耗
RISC 架构源自为小型计算机或微型计算机(最终成为 PC)制造性能更好、外形更小的芯片的需求。于是,这就引出了第二个基本设计问题:究竟是侧重于芯片性能(处理速度或时钟速度)还是能源消耗(功耗)。
由于 ARM 处理器集成到了 SoC 上,因此长期以来围绕的焦点就是整体资源管理,包括低能耗和更低的热量生成。例如,ARM 架构(如 ARMv8)往往没有简单的散热系统(手机上没有风扇)。而另一方面,x86 CPU 倾向于支持高端处理速度,而不是以低功耗为目标。
虽然两种 CPU 设计都具有高性能(ARM 和 x86 阵营都有速度在世界上数一数二的超级计算机),但 ARM 设计往往侧重于更小巧的外形、电池使用时间、尺寸、免除散热要求和成本(这也许是最重要的)等方面。这就是 ARM 处理器主导智能手机、平板电脑甚至树莓派系统等小型电子产品和移动设备的原因。而 x86 架构在服务器、PC 甚至笔记本电脑中更为常见,因为这些领域需要实时的速度和灵活性,并且对散热和尺寸的限制较少。
离开在欧洲考察访问的最后一站英国后,大清帝国前直隶总督兼北洋大臣李鸿章乘“圣-路易斯”号邮轮于当地时间1896年8月28日抵达美国纽约,开始对美国进行访问。李鸿章在美国受到了美国总统克利夫兰的接见,并和美国一些要员及群众见面,受到了“史无前例的礼遇”(《纽约时报》)。9月2日上午9时许,李鸿章在纽约华尔道夫饭店接受了记者的采访。
美国记者:尊敬的阁下,您已经谈了我们很多事情,您能否告诉我们,什么是您认为我们做得不好的事的呢? 李鸿章:我不想批评美国,我对美国政府给予我的接待毫无怨言,这些都是我所期待的。只是一件事让我吃惊或失望,那就是你们国家有形形色色的政党存在,而我只对其中一部分有所了解。其他政党会不会使国家出现混乱呢?你们的报纸能不能靠国家利益将各个政党联合起来呢?
美国记者:那么阁下,您在这个国家的所见所闻中什么最使您最感兴趣呢? 李鸿章:我对我在美国见到的一切都很喜欢,所有事情都让我高兴。最使我感到惊讶的是20层或更高一些的摩天大楼,我在中国和欧洲从没见过这种高楼。这些楼看起来建得很牢固,能抗任何狂风吧?但中国不能建这么高的楼房,因台风会很快把它吹倒,而且高层建筑若没有你们这样好的电梯配套也很不方便。
美国记者:阁下,您赞成贵国的普通百姓都接受教育吗? 李鸿章:我们的习惯是送所有男孩上学。(翻译插话:在清国,男孩,才是真正的孩子。)我们有很好的学校,但只得付得起学费的富家子弟才能上学,穷人家的孩子没有机会上学。但是,我们现在还没有你们这么多的学校和学堂,我们计划将来在国内建立更多的学校。
美国记者:阁下,您赞成妇女接受教育吗? 李鸿章(停顿一会儿):在我们清国,女孩在家中请女教师提供教育,所有有经济能力的家庭都会雇请女家庭教师。我们现在还没有女子就读的公立学校,也没有更高一级的教育机构。这是由于我们的风俗习惯与你们(包括欧洲和美国)不同,也许我们应该学习你们的教育制度,并将最适合我们国情的那种引入国内,这确是我们所需要的。
记者:总督阁下,您期待对现存的排华法案进行任何修改吗? 李鸿章:我知道,你们又将进行选举了,新政府必然会在施政上有些变化。因此,我不敢在修改法案前发表任何要求废除《格利法》的言论,我只是期望美国新闻界能助清国移民一臂之力。我知道报纸在这个国家有很大的影响力,希望整个报界都能帮助清国侨民,呼吁废除排华法案,或至少对《格利法》进行较大修改。
美国记者:阁下,您能说明选择经加拿大而非美国西部回国路线的理由吗?是不是您的同胞在我国西部一些地区没有受到善待? 李鸿章:我有两个原因不愿经过美国西部各州。 第一,当我在清国北方港口城市担任高官时,听到了很多加州清国侨民的抱怨。这些抱怨表明,清国人在那里未能获得美国宪法赋予他们的权利,他们请求我帮助他们使他们的美国移民身份得到完全承认,并享受作为美国移民所应享有的权利。而你们的《格利法》不但不给予他们与其他国家移民同等的权利,还拒绝保障他们合法的权益,因此我不希望经过以这种方式对待我同胞的地方,也不打算接受当地华人代表递交的要求保证他们在西部各州权益的请愿信。 第二,当我还是一名优秀的水手时,就知道必须学会自己照顾自己。我比别人年纪要大好多岁,从温哥华回国的航程要比从旧金山出发更短些。我现在才知道,清国“皇后号”船体宽阔舒适,在太平洋的所有港口都难以找到如此之好的远洋客船。 排华法案是世界上最不公平的法案。所有的政治经济学家都承认,竞争促使全世界的市场迸发活力,而竞争既适用于商品也适用于劳动力。我们知道,《格利法》是由于受到爱尔兰裔移民欲独霸加州劳工市场的影响,因为清国人是他们很强的竞争对手,所以他们想排除华人。如果我们清国也抵制你们的产品,拒绝购买美国商品,取消你们的产品销往清国的特许权,试问你们将作何感想呢?不要把我当成清国什么高官,而要当成一名国际主义者,不要把我当成达官贵人,而要当作清国或世界其他国家一名普通公民。请让我问问,你们把廉价的华人劳工逐出美国究竟能获得什么呢?廉价劳工意味着更便宜的商品,顾客以低廉价格就能买到高质量的商品。 你们不是很为你们作为美国人自豪吗?你们的国家代表着世界上最高的现代文明,你们因你们的民主和自由而自豪,但你们的排华法案对华人来说是自由的吗?这不是自由!因为你们禁止使用廉价劳工生产的产品,不让他们在农场干活。你们专利局的统计数据表明,你们是世界上最有创造力的人,你们发明的东西比任何其他国家的总和都多。在这方面,你们走在了欧洲的前面。因为你们不限制你们在制造业方面的发展,搞农业的人不限于搞农业,他们还将农业、商业和工业结合了起来。你们不象英国,他们只是世界的作坊。你们致力于一切进步和发展的事业。在工艺技术和产品质量方面,你们也领先于欧洲国家。但不幸的是,你们还竞争不过欧洲,因为你们的产品比他们的贵。这都是因为你们的劳动力太贵,以致生产的产品因价格太高而不能成功地与欧洲国家竞争。劳动力太贵,是因为你们排除华工。这是你们的失误。如果让劳动力自由竞争,你们就能够获得廉价的劳力。华人比爱尔兰人和美国其他劳动阶级都更勤俭,所以其他族裔的劳工仇视华人。 我相信美国报界能帮助华人一臂之力,取消排华法案。
美国记者:美国资本在清国投资有什么出路吗? 李鸿章:只有将货币、劳动力和土地都有机地结合起来,才会产生财富。清国政府非常高兴地欢迎任何资本到我国投资。我的好朋友格兰特将军曾对我说,你们必须要求欧美资本进入清国以建立现代化的工业企业,帮助清国人民开发利用本国丰富的自然资源。但这些企业的管理权应掌握在清国政府手中。我们欢迎你们来华投资,资金和技工由你们提供。但是,对于铁路、电讯等事物,要由我们自己控制。我们必须保护国家主权,不允许任何人危及我们的神圣权力。我将牢记格兰特将军的遗训,所有资本,无论是美国的还是欧洲的,都可以自由来华投资。
美国记者:阁下,您赞成将美国的或欧洲的报纸介绍到贵国吗? 李鸿章:中国办有报纸,但遗憾的是中国的编辑们不愿将真相告诉读者,他们不像你们的报纸讲真话,只讲真话。中国的编辑们在讲真话的时候十分吝啬,他们只讲部分的真实,而且他们的报纸也没有你们报纸这么大的发行量。由于不能诚实地说明真相,我们的报纸就失去了新闻本身的高贵价值,也就未能成为广泛传播文明的方式了。
*Photo by on
纽约时报1896年对李鸿章的 译文:
| |