新闻资讯 NEWS
你的位置:上海彰兆工艺品进出口有限公司 > 新闻资讯 > 记号位(S):由于数字为正数
记号位(S):由于数字为正数
发布日期:2024-07-03 16:43    点击次数:95

记号位(S):由于数字为正数

跟着国度纵欲发展数字经济,算力的教训和普惠变得越来越垂死。在数字化时间,算力已成为鼓励科技发展和篡改的要害要素。它不单是是预计蓄意机处理速率的步伐,还触及蓄意机系统或斥地彭胀蓄意任务的才调、数据处理才调以及贬责复杂蓄意问题的才调。那么算力到底是什么呢?

随便了解算力

算力(Computational Power)在蓄意机科学和蓄意领域中是一个垂死意见,它指的是蓄意机系统或斥地彭胀数值蓄意和处理任务的才调。教训算力意味着不错更快地彭胀复杂的蓄意任务,从而提高蓄意的后果和性能。随便来说,算力决定了蓄意机处理信息的速率和后果,平直影响咱们使用电子斥地的体验,举例网页加载速率和游戏通顺度等。

在数字经济时间,算力是新的坐褥力,为加强数字政府斥地、激活数据要素潜能以及已毕百行万企的数字化转型提供了能源。据中国信息通讯有计划所的测算,每参加1元的算力,不错带动3至4元的经济产出。算力的教训对经济具有稠密的影响力。凭据统计数据涌现,每提高一个算力指数点,不错带动数字经济增长 0.36% 和 GDP 增长 0.17%。那算力大小具体是如何预计的呢?这里就必须说起浮点运算,接下来咱们来了解下浮点运算这个意见。

什么是浮点运算

算力最基本的计量单元是 FLOPS,英文 Floating-point Operations Per Second,即每秒彭胀的浮点运算次数。浮点运算其实即是带少许的加减乘除运算。

举个例子:1.1+2.2 即是典型的浮点运算,臆度你照旧默算出驱散是 3.3 了。不外对蓄意机来说,这个问题并不随便。咱们知说念,蓄意机是以 0 和 1 组成的二进制数字进走运算的,比如在基础的二进制里,1 即是 1,2 就造成了 “10”,3 是 “11”,这也带来一个问题:蓄意机大致处理的数字只须整数。其实,0.1 不错作为是1除以10的驱散,咱们思让蓄意机蓄意一个带少许点的数字,只须告诉 CPU 这是一个被 1 背面加了若干个 0 整除的整数就行了。这样一来,蓄意机在处理少许点的时辰,就多了好几个运算要领。浮点运算的速率也就成了预计蓄意机性能的步伐。

算力的计量单元,除了 FLOPS,从小到大还有:

KFLOPS(每秒1000次浮点运算,10^3)

MFLOPS(每秒1百万次,10^6)

GFLOPS(每秒10亿次,10^9)

TFLOPS(每秒1万亿次,10^12)

PFLOPS(每秒1000万亿次,10^15)

EFLOPS(每秒100亿亿次,10^18)

浮点数

浮点数的浮点即是指它的少许点的位置是不错是飞动不定的。这怎样厚实呢?其实,浮点数是领受科学计数法的神色来示意的,举例十进制少许 1.234,用科学计数法示意,不错有多种神色:

1.234 = 1.234 * 10^0

1.234 = 12.34 * 10^-1

1.234 = 123.4 * 10^-2

...

用这种科学计数法的神色示意少许时,少许点的位置就变得飞动不定了。使用雷同的法例,关于二进制数,咱们也不错用科学计数法示意,也即是说把基数 10 换成 2 即可。那浮点数如何示意数字?其实浮点数是领受科学计数法来示意一个数字的,它的口头不错写成这样:

V = (-1)^S * M * R^E

其中各个变量的含义如下:

S:记号位,取值 0 或 1,决定一个数字的记号,0 示意正,1 示意负

M:余数,用少许示意,举例前边所看到的 1.234 * 10^0,1.234 即是余数

R:基数,示意十进制数 R 即是 10,示意二进制数 R 即是 2

E:指数,用整数示意,举例前边看到的 10^-1,-1 即是指数

如若咱们要在蓄意机中,用浮点数示意一个数字,业务合作只需要阐述这几个变量即可。

举个例子:将十进制数 0.125 疗养为浮点数, 业务合作咱们不错使用二进制浮点数示意。

记号位(S):由于数字为正数, 新闻资讯是以 S = 0。

余数(M):将少许部分疗养为二进制。0.125 的二进制示意为 0.001。

基数(R):关于二进制数,R = 2。

指数(E):笃定指数的值。将 0.125 疗养为科学计数法体式可得 0.125 = 1.0 * 2^-3。因此,指数 E = -3。

代入公式:V = (-1)^S * M * R^E

将以上值代入公式可得:

V = (-1)^0 * 0.001 * 2^-3 = 0.001 * 0.125

运算驱散为 0.000001。因此十进制数 0.125 在二进制浮点数示意下为 0.000001。

蓄意机中使用有限的相接字节来保存浮点数,而 IEEE 754步伐界说了三种常见的浮点数口头:单精度、双精度和扩展双精度,它们适用于不同的蓄意需求。一般来说,单精度相宜一般蓄意,双精度相宜科学蓄意,扩展双精度相宜高精度蓄意。一个免除 IEEE 754步伐的系统必须营救单精度类型(强制类型),最佳也营救双精度类型(推选类型),而扩展双精度类型则是可选的。

单精度浮点数(FP32)

单精度浮点数口头(英语:single-precision floating-point format)是一种数据类型,在蓄意机存储器中占用 4 个字节(32 bits),专揽 “浮点”(浮动少许点)的方法,不错示意一个范围很大的数值。在 IEEE 754-2008 的界说中,32-bit base 2 口头被厚爱称为 binary32 口头。这种口头在 IEEE 754-1985 被界说为 single,即单精度。需要肃肃的是,在更早的一些蓄意机系统中,也存在着其他 4 字节的浮点数口头。

第 1 位示意正负,中间 8 位示意指数,后 23 位储存有用数位(有用数位是 24 位)。第一位的正负号 0 代表正,1 代表负。中间八位共可示意 2^8 = 256 个数,指数不错是二补码;或 0 到 255,0 到 126 代表 -127 到 -1,127 代表零,128-255 代表 1-128。有用数位最左手边的 1 并不会储存,因为它一定存在(二进制的第一个有用数字必定是1)。换言之,有用数位是 24 位,实质储存 23 位。

举个例子:要将十进制数 0.125 疗养为单精度浮点数(32 位)。

免除 IEEE 754 步伐的示意方法,不错按照以下要领进行疗养:

记号位(Sign):由于数字为正数,产品介绍是以记号位为 0。

余数(Fraction):将少许部分疗养为二进制。0.125 的二进制示意为 0.001。

指数(Exponent):指数的偏移量为 127。由于 0.125 不错示意为 1.0 × 2^(-3),指数为 -3。加上偏移量后,实质指数为 -3 + 127 = 124。将 124 疗养为二进制得到 01111100。

组合位:将记号位、指数位和余数位组合在沿途,得到单精度浮点数的二进制示意。

最终的二进制示意为:0 01111100 00100000000000000000000

双精度浮点数(FP64)

双精度浮点数(Double Precision Floating Point),也称为 FP64,是一种浮点数数据类型,用于在蓄意机中示意和进行高精度的浮点数运算。FP64 使用 64 个比特位(8 个字节)来示意一个浮点数,其中 1 位用于示意记号位(正负号),11 位用于示意指数,52 位用于示意余数。

双精度浮点数的示意体式雷同领受科学计数法,即 ±M × 2^E,其中 M 为余数,E 为指数。通过使用更多的指数位和余数位,FP64 相干于单精度浮点数大致示意更广范围和更高精度的数值。

举个例子:将十进制数 0.125 疗养为双精度浮点数(64位)。

免除 IEEE 754 步伐的示意方法,不错按照以下要领进行疗养:

记号位(Sign):由于数字为正数,是以记号位为 0。

余数(Fraction):将少许部分疗养为二进制。0.125 的二进制示意为 0.001。

指数(Exponent):指数的偏移量为 1023。由于 0.125 不错示意为 1.0 × 2^(-3),指数为 -3。加上偏移量后,实质指数为 -3 + 1023 = 1020。将 1020 疗养为二进制得到 01111111100。

组合位:将记号位、指数位和余数位组合在沿途,得到双精度浮点数的二进制示意。

最终的二进制示意为:0 01111111100 0010000000000000000000000000000000000000000000000000

图片

双精度浮点数的取值范围约为 ±4.9 × 10^-324 到 ±1.8 × 10^308,并提供简短 15 到 16 位有用数字的精度。比较于单精度浮点数,双精度浮点数大致处理更大范围的数值和提供更高的精度,适用于对精准性条目较高的蓄意任务。

双精度浮点数常用于科学蓄意、工程应用、金融分析和高性能蓄意等领域。它在这些领域中被畴昔用于处理实数数据,如数值模拟、大界限蓄意、天文体、物理学和工程蓄意等。

关联词,需要肃肃的是,双精度浮点数的存储空间和蓄意支拨相干于单精度浮点数更高。在某些情况下,如若对精度条目不高或者蓄意资源有限,不错推敲使用单精度浮点数进行蓄意,以提高蓄意后果和简约内存破钞。

浮点数的舍入

由于浮点数蓄意经过中丢失了精度,浮点运算的性质与数学运算有所不同。任何有用数上的运算驱散,时时齐存放在较长的寄存器中,当驱散被放回浮点口头时,必须将多出来的比特丢弃。IEEE 步伐列出 4 种不同的方法:

舍入到最接近:舍入到最接近,在一样接近的情况下偶数优先(Ties To Even,这是默许的舍入神色):会将驱散舍入为最接近且不错示意的值,然则当存在两个数一样接近的时辰,则取其中的偶数(在二进制中是以0收尾的)。

朝 +∞ 标的舍入:会将驱散朝正无穷大的标的舍入。

朝 -∞ 标的舍入:会将驱散朝负无穷大的标的舍入。

朝 0 标的舍入:会将驱散朝 0 的标的舍入。

单、双精度的应用场景

单精度浮点数时时应用在需要较高蓄意速率的场景,举例镶嵌式系统和出动斥地。在这些应用中,关于一些及时性条目较高的任务,如图形渲染、音视频处理等,单精度浮点数大致提供实足的精度,而况在存储和蓄意上愈加高效,大致悠闲及时性和资源适度的需求。此外,单精度浮点数也畴昔应用于科学有计划和工程领域中的数值蓄意,包括求解方程、模拟物理经过等。在这些领域中,单精度浮点数的精度照旧实足悠闲大部分的蓄意需求,同期不错提高蓄意速率和简约存储空间。

双精度浮点数主要应用于需要更高精度的场景,如科学蓄意、工程蓄意、金融分析等。在这些领域中,对蓄意驱散的精准性条目较高,需要更多的有用数字来示意和处理实数。双精度浮点数大致提供更高的精度和更大的示意范围,大致处理更复杂和缜密的蓄意任务。在科学蓄意中,如天文体、数值模拟等领域,双精度浮点数时时用于求解复杂的数学模子和算法,以得回更准确的驱散。在金融分析中,双精度浮点数不错处理更大的数值范围和更高的精度,确保蓄意驱散的准确性和可靠性。

总之,礼聘单精度如故双精度浮点数应凭据具体应用的需求来决定,需要量度蓄意速率、精度要乞降资源适度等身分。单精度浮点数适用于对蓄意速率条目较高且精度条目不是卓越严格的场景,而双精度浮点数适用于对精度条目更高的科学蓄意和工程领域。

CPU 和 GPU 的算力蓄意

当今工作器的算力主要包括 CPU 和 GPU 等不同芯片产生的算力。那具体到每台工作器的算力,究竟如何蓄意呢?

CPU 的算力蓄意咱们以 CPU 的双精度浮点运算才调(FP64)为例,单个 CPU 的算力,与 CPU 中枢的个数、频率、单时钟周期浮点蓄意才调 3 个身分关系。

单 CPU 算力 = CPU 核数 * 单核主频 * 单周期浮点蓄意才调

以 Intel Cascade Lake 架构的 Xeon Platinum 8280 为例,该 CPU 具有 28 个中枢,主频为 2.7GHz,并营救 AVX512 领导集。凭据提供的信息,咱们不错蓄意出该 CPU 的双精度浮点运算才调(FP64)。

率先,蓄意单个 CPU 中枢的单周期浮点蓄意才调:

单周期浮点蓄意才调 = 512bit * 2FMA * 2M/A / 64bit = 32 FLOPS/Cycle

然后,蓄意单个 CPU 中枢的峰值浮点运算才调:

单个 CPU 中枢的峰值浮点运算才调 = 单周期浮点蓄意才调 * 主频 = 32 FLOPS/Cycle * 2.7 GHz

临了,蓄意通盘 CPU 的峰值浮点运算才调:

单 CPU 算力 = CPU 核数 * 单个 CPU 中枢的峰值浮点运算才调 = 28 cores * 单个CPU中枢的峰值浮点运算才调

凭据提供的数据,蓄意得到:

单个 CPU 中枢的峰值浮点运算才调 = 32 FLOPS/Cycle * 2.7 GHz = 86.4 GFLOPS

单 CPU 算力 = 28 cores * 86.4 GFLOPS = 2.4192 TFLOPS

因此,以 Intel Cascade Lake 架构的 Xeon Platinum 8280 为例,该 CPU 的表面峰值双精度浮点性能为 2.4192 TFLOPS。

注:该蓄意是表面值,实质性能可能受到多种身分(如领导级并行性、内存看望蔓延等)的影响。

GPU 的算力蓄意GPU 的算力与上头的蓄意方法雷同。单个 GPU 算力亦然与中枢个数、频率、单时钟周期才调 3 个身分关系。

以 NVIDIA Volta 架构的 V100 为例,该 GPU 领有 2560 个双精度浮点中枢(FP64 cores),主频为 1.530GHz。

图片

凭据提供的信息,咱们不错蓄意出该 GPU 的双精度浮点运算才调(FP64)。

率先,蓄意单个 GPU 中枢的单周期浮点蓄意才调:

单周期浮点蓄意才调 = 64bit * 1FMA * 2M/A / 64bit = 2 FLOPS/Cycle

然后,蓄意单个 GPU 中枢的峰值浮点运算才调:

青铜峡市岩嘉混凝土有限公司

单个 GPU 中枢的峰值浮点运算才调 = 单周期浮点蓄意才调 * 主频 = 2 FLOPS/Cycle * 1.530 GHz

临了,蓄意通盘 GPU 的峰值浮点运算才调:

单 GPU 算力 = GPU 核数 * 单个 GPU 中枢的峰值浮点运算才调 = 2560 cores * 单个 GPU 中枢的峰值浮点运算才调

凭据提供的数据,蓄意得到:

单个 GPU 中枢的峰值浮点运算才调 = 2 FLOPS/Cycle * 1.530 GHz = 3.060 GFLOPS

单 GPU 算力 = 2560 cores * 3.060 GFLOPS = 7833 GFLOPS = 7.833 TFLOPS

因此,以 NVIDIA Volta 架构的 V100 为例,该 GPU 的表面峰值双精度浮点性能为 7.833 TFLOPS。

注:该蓄意是表面值,实质性能可能受到多种身分(如内存带宽、功耗适度等)的影响。

聊了这样多,战胜公共对 CPU、GPU 的算力蓄意和浮点运算齐有了一定的了解联系我们,天然看起来比较复杂,其实如故比较好厚实的。公共也不错保藏下这篇内容,以备备而无须。

本站仅提供存储工作,统共内容均由用户发布,如发现存害或侵权内容,请点击举报。

上一篇:没有了

下一篇:没有了