胬肉是什么意思| 早上六点半是什么时辰| 什么是免疫组化| 对口升学什么意思| 拉墨绿色的大便是什么原因| 阴虚是什么| 吃什么解辣最快方法| 直捣黄龙是什么意思| 腰间盘突出压迫神经什么症状| 藏海花是什么花| 超度是什么意思| 子宫切除后对身体有什么影响| 总是很困想睡觉是什么原因| 热惊厥病发是什么症状| 李克勤属什么生肖| 1921年是什么年| 梦见炖鱼预示什么| 玉皇大帝和王母娘娘是什么关系| 10月30号是什么星座| 什么是http| 梦到吃梨是什么意思| 欧尼是什么意思| 撰稿是什么意思| 高铁上不能带什么| 装什么病能容易开病假| 10.30什么星座| 息肉有什么症状出现| 有什么组词| 尿酸高有什么症状| 活动性胃炎是什么意思| 申时左眼跳是什么预兆| 浪蹄子什么意思| 四月十八日是什么日子| 血小板减少有什么症状| 胸口疼痛挂什么科| 为什么听力会下降| 呆滞是什么意思| 什么的白桦| 急性化脓性扁桃体炎吃什么药| andy是什么意思| 2017属什么生肖| 嘴巴下面长痘痘是什么原因引起的| 紫色适合什么肤色的人| 糖尿病人不能吃什么| 什么情况下挂疼痛科| 发烧打冷颤是什么原因| 小孩老是眨眼睛是什么原因| 青玉是什么玉| 梦见别人搬家预示什么| 子宫内膜9mm意味着什么| 小狗打什么疫苗| 尿毒症前兆是什么症状表现| 肾结石什么症状| 绿色的鸟是什么鸟| 心肌缺血吃什么药效果最好| 六合是什么意思| 可见原始心管搏动是什么意思| 7月17是什么星座| 家里有壁虎是什么征兆| 心眼多是什么意思| 誉之曰的之是什么意思| 举足轻重是什么生肖| 蓝蓝的天上白云飘是什么歌| 功能性子宫出血是什么原因造成的| 特首是什么意思| 得了幽门螺杆菌是什么症状| smz是什么药| 五月十五是什么星座| 50岁掉牙齿是什么原因| 白带是什么样子| 锦衣玉食什么意思| 总胆固醇什么意思| 梦见别人开车撞死人是什么意思| 中元节是什么意思| jealousy是什么意思| 北京什么时候最热| 9月初是什么星座| 朝朝暮暮是什么意思| qm医学上什么意思| 家里的财位在什么位置| 硬卧是什么样子的| 万圣节什么时候| 灵芝主要治什么病| 乙肝复查检查什么项目| 双鱼座最配什么星座| 八哥吃什么| pab是什么意思| 骨皮质断裂是什么意思| 虾不能和什么同吃| 美国的国宝是什么动物| marmot什么牌子| 张卫健属什么生肖| 什么的兵马俑| 9月3日是什么纪念日| 蚂蚁的天敌是什么| 每延米是什么意思| 德比什么意思| 什么可以保护眼睛| 造口是什么| 夏天喝什么解渴| 彼岸花是什么花| 花胶是什么东西| 食管反流吃什么药| 下肢静脉血栓吃什么药| 尿潜血阴性什么意思| 立春有什么讲究| 大象的耳朵像什么一样| 你的美丽让你带走是什么歌| 手脚发胀是什么前兆| 口臭用什么牙膏| 路上遇到蛇是什么征兆| 两个立念什么| 补骨脂是什么东西| 猪脚和猪蹄有什么区别| 湿热内蕴证有什么症状| 蜂王浆有什么好处| 宫颈炎有什么症状| 为什么要做羊水穿刺检查| alp医学上是什么意思| 催乳素高是什么原因| 有什么园| 黑鱼不能和什么一起吃| 胆小如鼠的意思是什么| 痔疮什么情况下需要做手术| 深海鱼都有什么鱼| 和尚命是什么意思| 貌合神离是什么意思| 艾灸后皮肤痒出红疙瘩是什么原因| 怀孕子宫前位和后位有什么区别| 松花粉有什么功效| bmi什么意思| 乙型肝炎表面抗体高是什么意思| 腺样体是什么意思| 什么七什么八| 痔疮手术后吃什么| 今年闰六月有什么说法| 今天是什么节日吗| 蛇缠身是什么病| 西药是用什么材料做的| 火烧云是什么意思| 没晨勃说明什么问题| 人湿气重有什么症状| 守望相助是什么意思| 女性外阴瘙痒用什么药| 分泌物是褐色是什么原因| 大腿根部内侧瘙痒用什么药膏| 老鼠最怕什么东西| 什么是凤凰男| 陶土色大便是什么颜色| 口腔出血是什么病征兆| 用脚尖走路有什么好处| 教师节应该送老师什么花| 儿女情长是什么意思| 加码是什么意思| 包饺子什么馅好吃| 256排ct能检查什么病| 乌龟下蛋预示着什么| 女人在什么时候最容易怀孕| 老年人出虚汗是什么原因引起的| 三合生肖是什么意思| 乳清粉是什么东西| kumpoo是什么牌子| instagram是什么软件| 什么药可以溶解血栓| 九月二十九号是什么星座| 宫颈锥切术是什么意思| 为什么肝区隐隐作痛| 00年属什么的| 白细胞偏低吃什么药| 炖羊肉放什么调料| 乳腺囊肿和乳腺结节有什么区别| 月经正常颜色是什么色| 金牛座前面是什么星座| 小孩子注意力不集中是什么原因| 3月份什么星座| 六月五号是什么星座| 高反人群一般是什么人| 副高相当于什么级别| 呕心沥血是什么意思| 腰椎退行性变什么意思| 死亡是什么感觉| 婴儿老打嗝是什么原因| 肺结节吃什么药最好| 煜字五行属什么| 梦到两条蛇预示着什么| 毛肚是什么部位| 避孕药是什么原理| 冰心原名叫什么名字| 蝙蝠屎是什么中药| 什么样的草地| 狗狗呕吐是什么原因| 身体缺糖有什么症状| 什么是瑜伽| 小便分叉是什么症状| 母公司是什么意思| 女生肚脐眼下面疼是什么原因| 米粉用什么做的| 骨蒸潮热是什么症状| 什么补蛋白最快的食物| 什么样的人容易抑郁| 梦见被狗追是什么意思| 美国为什么支持以色列| 吊客是什么意思| 金黄的稻田像什么| 老人身上痒是什么原因| 狗狗可以吃什么| 胆汁是什么颜色| 梦到蛇是什么征兆| 曹操是什么星座| 单核细胞是什么意思| 猝死是什么原因造成的| 老年痴呆症是什么原因引起的| 吃什么能降血压最有效| 脖子痛是什么原因| 恰如其分是什么意思| xxs是什么意思| 口淡无味是什么原因| 飞蚊症用什么药物治疗最好| 退役和退伍有什么区别| 报考护士资格证需要什么条件| 支那人什么意思| 精神病人最怕什么刺激| 郑和下西洋是什么时候| 效应是什么意思| 吃软不吃硬是什么生肖| 贝兄念什么| 心律不齐是什么意思| 肌肉疼是什么原因| 五险都有什么险| 痔疮是什么意思| gr是什么意思| 颈椎压迫神经手麻吃什么药| hcy是什么意思| air是什么牌子| 为什么头皮会疼| 发烧拉肚子是什么原因| 三观是指什么| 红旗代表什么生肖| 22是什么生肖| 什么含维生素d| 自由奔放是什么生肖| 梦见被熊追是什么意思| 痰中带血吃什么药| 勾魂是什么意思| 胃痛可以吃什么| 老是想睡觉是什么原因| 肩周炎口服什么药最好| 去火喝什么茶最好| 水果之王是什么| 硬核什么意思| 蚂蚁上树是什么菜| 煎中药用什么容器最好| 路痴是什么原因造成的| 孝是什么| 内秀是什么性格的人| jasonwood是什么牌子| 什么球身上长毛| 灯五行属什么| 蕃秀什么意思| 吃什么能增强免疫力和抵抗力| 牙痛 吃什么药| 血热吃什么药| 既寿永昌什么意思| 检查脂肪肝做什么检查| 百度Jump to content

方媛爸托付女儿给郭富城:我从小听你的歌长大

From Wikipedia, the free encyclopedia
Diagram of a symmetric multiprocessing system
百度 中国人民是具有伟大创造精神、伟大奋斗精神、伟大团结精神、伟大梦想精神的人民。

Symmetric multiprocessing or shared-memory multiprocessing[1] (SMP) involves a multiprocessor computer hardware and software architecture where two or more identical processors are connected to a single, shared main memory, have full access to all input and output devices, and are controlled by a single operating system instance that treats all processors equally, reserving none for special purposes. Most multiprocessor systems today use an SMP architecture. In the case of multi-core processors, the SMP architecture applies to the cores, treating them as separate processors.

Professor John D. Kubiatowicz considers traditionally SMP systems to contain processors without caches.[2] Culler and Pal-Singh in their 1998 book "Parallel Computer Architecture: A Hardware/Software Approach" mention: "The term SMP is widely used but causes a bit of confusion. [...] The more precise description of what is intended by SMP is a shared memory multiprocessor where the cost of accessing a memory location is the same for all processors; that is, it has uniform access costs when the access actually is to memory. If the location is cached, the access will be faster, but cache access times and memory access times are the same on all processors."[3]

SMP systems are tightly coupled multiprocessor systems with a pool of homogeneous processors running independently of each other. Each processor, executing different programs and working on different sets of data, has the capability of sharing common resources (memory, I/O device, interrupt system and so on) that are connected using a system bus or a crossbar.

Design

[edit]

SMP systems have centralized shared memory called main memory (MM) operating under a single operating system with two or more homogeneous processors. Usually each processor has an associated private high-speed memory known as cache memory (or cache) to speed up the main memory data access and to reduce the system bus traffic.

Processors may be interconnected using buses, crossbar switches or on-chip mesh networks. The bottleneck in the scalability of SMP using buses or crossbar switches is the bandwidth and power consumption of the interconnect among the various processors, the memory, and the disk arrays. Mesh architectures avoid these bottlenecks, and provide nearly linear scalability to much higher processor counts at the sacrifice of programmability:

Serious programming challenges remain with this kind of architecture because it requires two distinct modes of programming; one for the CPUs themselves and one for the interconnect between the CPUs. A single programming language would have to be able to not only partition the workload, but also comprehend the memory locality, which is severe in a mesh-based architecture.[4]

SMP systems allow any processor to work on any task no matter where the data for that task is located in memory, provided that each task in the system is not in execution on two or more processors at the same time. With proper operating system support, SMP systems can easily move tasks between processors to balance the workload efficiently.

History

[edit]

The earliest production system with multiple identical processors was the Burroughs B5000, which was functional around 1961. However at run-time this was asymmetric, with one processor restricted to application programs while the other processor mainly handled the operating system and hardware interrupts. The Burroughs D825 first implemented SMP in 1962.[5][6]

IBM offered dual-processor computer systems based on its System/360 Model 65 and the closely related Model 67[7] and 67–2.[8] The operating systems that ran on these machines were OS/360 M65MP[9] and TSS/360. Other software developed at universities, notably the Michigan Terminal System (MTS), used both CPUs. Both processors could access data channels and initiate I/O. In OS/360 M65MP, peripherals could generally be attached to either processor since the operating system kernel ran on both processors (though with a "big lock" around the I/O handler).[10] The MTS supervisor (UMMPS) has the ability to run on both CPUs of the IBM System/360 model 67–2. Supervisor locks were small and used to protect individual common data structures that might be accessed simultaneously from either CPU.[11]

Other mainframes that supported SMP included the UNIVAC 1108 II, released in 1965, which supported up to three CPUs, and the GE-635 and GE-645,[12][13] although GECOS on multiprocessor GE-635 systems ran in a master-slave asymmetric fashion, unlike Multics on multiprocessor GE-645 systems, which ran in a symmetric fashion.[14]

Starting with its version 7.0 (1972), Digital Equipment Corporation's operating system TOPS-10 implemented the SMP feature, the earliest system running SMP was the DECSystem 1077 dual KI10 processor system.[15] Later KL10 system could aggregate up to 8 CPUs in a SMP manner. In contrast, DECs first multi-processor VAX system, the VAX-11/782, was asymmetric,[16] but later VAX multiprocessor systems were SMP.[17]

Early commercial Unix SMP implementations included the Sequent Computer Systems Balance 8000 (released in 1984) and Balance 21000 (released in 1986).[18] Both models were based on 10 MHz National Semiconductor NS32032 processors, each with a small write-through cache connected to a common memory to form a shared memory system. Another early commercial Unix SMP implementation was the NUMA based Honeywell Information Systems Italy XPS-100 designed by Dan Gielan of VAST Corporation in 1985. Its design supported up to 14 processors, but due to electrical limitations, the largest marketed version was a dual processor system. The operating system was derived and ported by VAST Corporation from AT&T 3B20 Unix SysVr3 code used internally within AT&T.

Earlier non-commercial multiprocessing UNIX ports existed, including a port named MUNIX created at the Naval Postgraduate School by 1975.[19]

Uses

[edit]

Time-sharing and server systems can often use SMP without changes to applications, as they may have multiple processes running in parallel, and a system with more than one process running can run different processes on different processors.

On personal computers, SMP is less useful for applications that have not been modified. If the system rarely runs more than one process at a time, SMP is useful only for applications that have been modified for multithreaded (multitasked) processing. Custom-programmed software can be written or modified to use multiple threads, so that it can make use of multiple processors.

Multithreaded programs can also be used in time-sharing and server systems that support multithreading, allowing them to make more use of multiple processors.

Advantages/disadvantages

[edit]

In current SMP systems, all of the processors are tightly coupled inside the same box with a bus or switch; on earlier SMP systems, a single CPU took an entire cabinet. Some of the components that are shared are global memory, disks, and I/O devices. Only one copy of an OS runs on all the processors, and the OS must be designed to take advantage of this architecture. Some of the basic advantages involves cost-effective ways to increase throughput. To solve different problems and tasks, SMP applies multiple processors to that one problem, known as parallel programming.

However, there are some reasons that implement SMP may be complex, due to cache coherence and shared objects.

Programming

[edit]

Uniprocessor and SMP systems require different programming methods to achieve maximum performance. Programs running on SMP systems may experience an increase in performance even when they have been written for uniprocessor systems. This is because hardware interrupts usually suspends program execution while the kernel that handles them can execute on an idle processor instead. The effect in most applications (e.g. games) is not so much a performance increase as the appearance that the program is running much more smoothly. Some applications, particularly building software and some distributed computing projects, run faster by a factor of (nearly) the number of additional processors. (Compilers by themselves are single threaded, but, when building a software project with multiple compilation units, if each compilation unit is handled independently, this creates an embarrassingly parallel situation across the entire multi-compilation-unit project, allowing near linear scaling of compilation time. Distributed computing projects are inherently parallel by design.)

Systems programmers must build support for SMP into the operating system, otherwise, the additional processors remain idle and the system functions as a uniprocessor system.

SMP systems can also lead to more complexity regarding instruction sets. A homogeneous processor system typically requires extra registers for "special instructions" such as SIMD (MMX, SSE, etc.), while a heterogeneous system can implement different types of hardware for different instructions/uses.

Performance

[edit]

When more than one program executes at the same time, an SMP system has considerably better performance than a uniprocessor system, because different programs can run on different CPUs simultaneously. Conversely, asymmetric multiprocessing (AMP) usually allows only one processor to run a program or task at a time. For example, AMP can be used in assigning specific tasks to CPU based to priority and importance of task completion. AMP was created well before SMP in terms of handling multiple CPUs, which explains the lack of performance based on the example provided.

In cases where an SMP environment processes many jobs, administrators often experience a loss of hardware efficiency. Software programs have been developed to schedule jobs and other functions of the computer so that the processor utilization reaches its maximum potential. Good software packages can achieve this maximum potential by scheduling each CPU separately, as well as being able to integrate multiple SMP machines and clusters.

Access to RAM is serialized; this and cache coherency issues cause performance to lag slightly behind the number of additional processors in the system.

Alternatives

[edit]
Diagram of a typical SMP system. Three processors are connected to the same memory module through a system bus or crossbar switch.

SMP uses a single shared system bus that represents one of the earliest styles of multiprocessor machine architectures, typically used for building smaller computers with up to 8 processors.

Larger computer systems might use newer architectures such as NUMA (Non-Uniform Memory Access), which dedicates different memory banks to different processors. In a NUMA architecture, processors may access local memory quickly and remote memory more slowly. This can dramatically improve memory throughput as long as the data are localized to specific processes (and thus processors). On the downside, NUMA makes the cost of moving data from one processor to another, as in workload balancing, more expensive. The benefits of NUMA are limited to particular workloads, notably on servers where the data are often associated strongly with certain tasks or users.

Finally, there is computer clustered multiprocessing (such as Beowulf), in which not all memory is available to all processors. Clustering techniques are used fairly extensively to build very large supercomputers.

Variable SMP

[edit]

Variable Symmetric Multiprocessing (vSMP) is a specific mobile use case technology initiated by NVIDIA. This technology includes an extra fifth core in a quad-core device, called the Companion core, built specifically for executing tasks at a lower frequency during mobile active standby mode, video playback, and music playback.

Project Kal-El (Tegra 3),[20] patented by NVIDIA, was the first SoC (System on Chip) to implement this new vSMP technology. This technology reduces mobile power consumption during active standby state, but also maximizes quad core performance during active usage for intensive mobile applications. Overall this technology addresses the need for increase in battery life performance during active and standby usage by reducing the power consumption in mobile processors.

See also

[edit]

References

[edit]
  1. ^ Patterson, David; Hennessy, John (2018). Computer Organisation and Design: The Hardware/Software Interface (RISC-V ed.). Cambridge, United States: Morgan Kaufmann. p. 509. ISBN 978-0-12-812275-4.
  2. ^ John Kubiatowicz. Introduction to Parallel Architectures and Pthreads. 2013 Short Course on Parallel Programming.
  3. ^ David Culler; Jaswinder Pal Singh; Anoop Gupta (1999). Parallel Computer Architecture: A Hardware/Software Approach. Morgan Kaufmann. p. 47. ISBN 978-1-55860-343-1.
  4. ^ Lina J. Karam; Ismail AlKamal; Alan Gatherer; Gene A. Frantz; David V. Anderson; Brian L. Evans (2009). "Trends in Multi-core DSP Platforms" (PDF). IEEE Signal Processing Magazine. 26 (6): 38–49. Bibcode:2009ISPM...26...38K. doi:10.1109/MSP.2009.934113. S2CID 9429714.
  5. ^ Gregory V. Wilson (October 1994). "The History of the Development of Parallel Computing".
  6. ^ Martin H. Weik (January 1964). "A Fourth Survey of Domestic Electronic Digital Computing Systems". Ballistic Research Laboratories, Aberdeen Proving Grounds. Burroughs D825.
  7. ^ IBM System/360 Model 65 Functional Characteristics (PDF). Fourth Edition. IBM. September 1968. A22-6884-3.
  8. ^ IBM System/360 Model 67 Functional Characteristics (PDF). Third Edition. IBM. February 1972. GA27-2719-2.
  9. ^ M65MP: An Experiment in OS/360 multiprocessing
  10. ^ Program Logic Manual, OS I/O Supervisor Logic, Release 21 (R21.7) (PDF) (Tenth ed.). IBM. April 1973. GY28-6616-9.
  11. ^ Time Sharing Supervisor Programs by Mike Alexander (May 1971) has information on MTS, TSS, CP/67, and Multics
  12. ^ GE-635 System Manual (PDF). General Electric. July 1964.
  13. ^ GE-645 System Manual (PDF). General Electric. January 1968.
  14. ^ Richard Shetron (May 5, 1998). "Fear of Multiprocessing?". Newsgroupalt.folklore.computers. Usenet: 354e95a9.0@news.wizvax.net.
  15. ^ DEC 1077 and SMP
  16. ^ VAX Product Sales Guide, pages 1-23 and 1-24: the VAX-11/782 is described as an asymmetric multiprocessing system in 1982
  17. ^ VAX 8820/8830/8840 System Hardware User's Guide: by 1988 the VAX operating system was SMP
  18. ^ Hockney, R.W.; Jesshope, C.R. (1988). Parallel Computers 2: Architecture, Programming and Algorithms. Taylor & Francis. p. 46. ISBN 0-85274-811-6.
  19. ^ Hawley, John Alfred (June 1975). "MUNIX, A Multiprocessing Version Of UNIX" (PDF). core.ac.uk. Retrieved 11 November 2018.
  20. ^ Variable SMP – A Multi-Core CPU Architecture for Low Power and High Performance. NVIDIA. 2011.
[edit]
色素沉着有什么办法可以去除 脸颊为什么会凹陷 梦见自己得了重病预示什么 牙出血是什么病的前兆 灰面是什么面粉
夏天喝什么茶减肥 全套是什么意思 红酒配什么菜 什么自语 娘家人是什么意思
唐僧取经取的是什么经 貔貅是什么动物 黄瓜不能和什么一起吃 菊花什么时候扦插最好 囗腔溃疡吃什么维生素
减脂吃什么蔬菜 孩子脾虚内热大便干吃什么药 每次来月经都会痛经什么原因 一字马是什么意思 湿气重用什么泡脚最好
硫酸亚铁是什么东西huizhijixie.com 自字五行属什么shenchushe.com 谷草谷丙比值偏高代表什么hcv9jop2ns2r.cn 紫荆花代表什么生肖hcv8jop1ns4r.cn 母字是什么结构helloaicloud.com
遗精频繁是什么原因hcv9jop0ns0r.cn 烧心吃什么药效果最好hcv8jop3ns7r.cn 漫不经心是什么意思hcv8jop1ns8r.cn 养小鬼是什么意思hcv7jop9ns8r.cn 反哺是什么意思hcv9jop0ns5r.cn
最近发胖过快什么原因wuhaiwuya.com 放疗后吃什么恢复快hcv9jop2ns9r.cn 吃苹果有什么好处和功效jasonfriends.com 94年是什么年hcv9jop2ns3r.cn 费率是什么hcv8jop5ns3r.cn
反应蛋白偏高说明什么hcv8jop6ns8r.cn 机器灵砍菜刀是什么意思hcv8jop0ns1r.cn 经常犯困想睡觉是什么原因hcv7jop5ns6r.cn 什么自行车最贵hcv8jop2ns1r.cn 缺失是什么意思cl108k.com
百度