AI-算力集群通往AGI

背景:
自GPT-4发布以来,全球AI能力的发展势头有放缓的迹象。
但这并不意味着Scaling Law失效,也不是因为训练数据不够,而是结结实实的遇到了算力瓶颈。
具体来说,GPT-4的训练算力约2e25 FLOP,近期发布的几个大模型比如Google的Gemini Ultra、Nvidia Nemotron 340B、以及Meta Llama3 405B背后使用的训练算力大致与GPT-4相当,没有质的提升,因此无法解锁模型的新能力。

在这里插入图片描述
为了成为AI时代的造物主,OpenAI/微软、xAI、Meta等科技巨头都在竞相建立一个由10万块H100构成的超级AI算力集群。

要想实现这个目标,光有钱是远远不够的,这里面涉及到能源挑战、网络拓扑结构、可靠性保障、并行方案、机架布局等众多技术难题。

这些技术难题是人类通向AGI路上的阻碍,同时也孕育着巨大的投资机会。

近日SemiAnalysis发布了一篇重磅深度报告,题为《100,000 H100 Clusters: Power, Network Topology, Ethernet vs InfiniBand, Reliability, Failures, Checkpointing》,对此话题展开分析,含金量很高。

报告链接放在文末,欢迎感兴趣的朋友去看原文。

先把主要结论列出来:

GPU数量决定了AI公司的生死线。当前AI公司第一梯队的门票是3.2万卡集群,明年第一梯队的门票可能会提升到10万卡(H100)集群。
一个10万张H100构成的AI集群功耗约为150MW,资本开支超过40亿美金,每年电费高达1.2亿美金。
为了满足下一代万亿参数多模态大模型训练,需要精巧的网络拓扑结构设计,综合使用数据并行、张量并行、流水线并行等技术进行分布式训练。
为了避免缴纳巨额的Nvidia Tax,越来越多的Hyperscaler开始选择博通的Tomahawk 5来搭建自己的超级AI集群,而非Nvidia的Spectrum-X,未来博通的网络收入或将继续飙升

文章有点硬核,建议耐心阅读哈。
(1)AI Infra的现状:一边铺设铁轨,一边快速行驶

AI Infra已经成为下一代大模型诞生的重要瓶颈。

有人形容OpenAI内部状态就像是一列开拓新大陆的火车,科学家负责让火车高速行驶,Infra工程师负责在前面修铁路,铁路铺设和火车行驶是齐头并进的。

根据测算,单个超级AI集群的资本支出超过40亿美金,功耗高达150 MW,每年耗能1.59 TWh。如果按0.078美元/kWh的标准费率测算,每年电费就得1.24亿美金。

虽然造价极其昂贵,全球科技巨头还是趋之若鹜。

为了说明10万卡构成的超级AI算力集群可以提供多少计算能力,我们来测算一下。

OpenAI在大约2万块A100上对GPT-4进行了90天的训练,BF16 FLOPS约为2.15e25 FLOP。

该集群的峰值吞吐量为6.28 BF16 ExaFLOP/秒。

在一个10万块H100构成的超级集群上,这一数字将飙升至198 FP16 ExaFLOP/秒,增加了31.5倍。在这里插入图片描述
使用H100训练万亿参数模型,可以实现高达35%的FP8 MFU和40%的FP16 MFU。

MFU(Model FLOPs Utilization)是衡量模型训练过程中,GPU实际运算能力与其理论峰值的比值。这个指标反映的是训练大模型时硬件资源的实际运算能力。

在10万块H100集群上训练100天,可以实现约6e26的有效FP8 FLOP。
也就是说,只需要4天就可以完成GPT-4的训练。

(2)AI背后的能源挑战

算力瓶颈的背后,有着“能源”和“工程能力”这两座大山。

一个由10万块H100构成的集群所需的功率约为150MW。而迄今为止最大的国家超级计算机El Capitan只需要30MW的功率,只有其1/5。

这150MW具体可以分为H100 Server内部的功耗,以及H100 Server外部的配套设备功耗。

H100 Server内部,每块GPU自身功耗约为700W,为每块GPU配套的CPU、NIC(Network Interface Card)、PSU(Power Supply Units)大约需要575W的功耗。

H100 Server外部,AI集群还囊括了存储服务器、网络交换机、光收发器等许多其他设备,约占总功耗的10%。

目前世界上还没有任何一座数据中心有能力部署150MW的AI集群。X.AI 甚至将田纳西州孟菲斯市的一家旧工厂改造成了数据中心。

这些AI集群通过光通信进行互联,而光通信的成本与传输距离成正比。

多模SR和AOC收发器的最长传输距离约为50米。

长距离单模DR和FR收发器的传输距离为500米~2000米,但其成本是前者的2.5倍。

园区级800G相干光收发器的传输距离可以超过2000米,但成本要高出10倍以上。在这里插入图片描述
较小规模的H100集群的通常做法是,通过1-2层交换机,把所有GPU以400G多模光收发器进行互联。

对于大规模H100集群,需要增加更多层交换机,光学设备的成本也会变得非常昂贵。不同的网络拓扑结构会带来截然不同的资本开支。

每栋数据中心大楼可以称为一个计算岛(compute island),里面包含多个“计算仓”(compute pod),这些计算仓之间用廉价的铜缆互联。随后多个“计算岛”(compute island)之间通过长距离的光通信进行互联。
在这里插入图片描述
【深度】通向AGI的钥匙:10万H100超级AI算力集群
Alpha Engineer
·2024-07-02 12:02
关注
10万张H100卡构成的超级AI算力集群就像是现代人类文明的奇观,是人类通向AGI的钥匙。​AI时代的军备竞赛已经拉开帷幕,赌注是天量的Capex支出,胜者则有机会成为AI时代的造物主。
作者:费斌杰 北京市青联委员 熵简科技CEO

自GPT-4发布以来,全球AI能力的发展势头有放缓的迹象。

但这并不意味着Scaling Law失效,也不是因为训练数据不够,而是结结实实的遇到了算力瓶颈。

具体来说,GPT-4的训练算力约2e25 FLOP,近期发布的几个大模型比如Google的Gemini Ultra、Nvidia Nemotron 340B、以及Meta Llama3 405B背后使用的训练算力大致与GPT-4相当,没有质的提升,因此无法解锁模型的新能力。

为了成为AI时代的造物主,OpenAI/微软、xAI、Meta等科技巨头都在竞相建立一个由10万块H100构成的超级AI算力集群。

要想实现这个目标,光有钱是远远不够的,这里面涉及到能源挑战、网络拓扑结构、可靠性保障、并行方案、机架布局等众多技术难题。

这些技术难题是人类通向AGI路上的阻碍,同时也孕育着巨大的投资机会。

近日SemiAnalysis发布了一篇重磅深度报告,题为《100,000 H100 Clusters: Power, Network Topology, Ethernet vs InfiniBand, Reliability, Failures, Checkpointing》,对此话题展开分析,含金量很高。

下面我给大家解读一下这篇大报告。报告链接放在文末,欢迎感兴趣的朋友去看原文。

在正式展开之前,我先把主要结论列出来:

GPU数量决定了AI公司的生死线。当前AI公司第一梯队的门票是3.2万卡集群,明年第一梯队的门票可能会提升到10万卡(H100)集群。

一个10万张H100构成的AI集群功耗约为150MW,资本开支超过40亿美金,每年电费高达1.2亿美金。

为了满足下一代万亿参数多模态大模型训练,需要精巧的网络拓扑结构设计,综合使用数据并行、张量并行、流水线并行等技术进行分布式训练。

为了避免缴纳巨额的Nvidia Tax,越来越多的Hyperscaler开始选择博通的Tomahawk 5来搭建自己的超级AI集群,而非Nvidia的Spectrum-X,未来博通的网络收入或将继续飙升。

下面我们正式开始。文章有点硬核,建议耐心阅读哈。

(1)AI Infra的现状:一边铺设铁轨,一边快速行驶

AI Infra已经成为下一代大模型诞生的重要瓶颈。

有人形容OpenAI内部状态就像是一列开拓新大陆的火车,科学家负责让火车高速行驶,Infra工程师负责在前面修铁路,铁路铺设和火车行驶是齐头并进的。

根据测算,单个超级AI集群的资本支出超过40亿美金,功耗高达150 MW,每年耗能1.59 TWh。如果按0.078美元/kWh的标准费率测算,每年电费就得1.24亿美金。

虽然造价极其昂贵,全球科技巨头还是趋之若鹜。

为了说明10万卡构成的超级AI算力集群可以提供多少计算能力,我们来测算一下。

OpenAI在大约2万块A100上对GPT-4进行了90天的训练,BF16 FLOPS约为2.15e25 FLOP。

该集群的峰值吞吐量为6.28 BF16 ExaFLOP/秒。

在一个10万块H100构成的超级集群上,这一数字将飙升至198 FP16 ExaFLOP/秒,增加了31.5倍。

使用H100训练万亿参数模型,可以实现高达35%的FP8 MFU和40%的FP16 MFU。

MFU(Model FLOPs Utilization)是衡量模型训练过程中,GPU实际运算能力与其理论峰值的比值。这个指标反映的是训练大模型时硬件资源的实际运算能力。

在10万块H100集群上训练100天,可以实现约6e26的有效FP8 FLOP。

也就是说,只需要4天就可以完成GPT-4的训练。

(2)AI背后的能源挑战

算力瓶颈的背后,有着“能源”和“工程能力”这两座大山。

一个由10万块H100构成的集群所需的功率约为150MW。而迄今为止最大的国家超级计算机El Capitan只需要30MW的功率,只有其1/5。

这150MW具体可以分为H100 Server内部的功耗,以及H100 Server外部的配套设备功耗。

H100 Server内部,每块GPU自身功耗约为700W,为每块GPU配套的CPU、NIC(Network Interface Card)、PSU(Power Supply Units)大约需要575W的功耗。

H100 Server外部,AI集群还囊括了存储服务器、网络交换机、光收发器等许多其他设备,约占总功耗的10%。

目前世界上还没有任何一座数据中心有能力部署150MW的AI集群。X.AI 甚至将田纳西州孟菲斯市的一家旧工厂改造成了数据中心。

这些AI集群通过光通信进行互联,而光通信的成本与传输距离成正比。

多模SR和AOC收发器的最长传输距离约为50米。

长距离单模DR和FR收发器的传输距离为500米~2000米,但其成本是前者的2.5倍。

园区级800G相干光收发器的传输距离可以超过2000米,但成本要高出10倍以上。

较小规模的H100集群的通常做法是,通过1-2层交换机,把所有GPU以400G多模光收发器进行互联。

对于大规模H100集群,需要增加更多层交换机,光学设备的成本也会变得非常昂贵。不同的网络拓扑结构会带来截然不同的资本开支。

每栋数据中心大楼可以称为一个计算岛(compute island),里面包含多个“计算仓”(compute pod),这些计算仓之间用廉价的铜缆互联。随后多个“计算岛”(compute island)之间通过长距离的光通信进行互联。
![](https://img-blog.csdnimg.cn/direct/d02f1060dd8f49acae95553636db8049.png
目前要在一个数据中心内集中提供150MW功率是相当困难的,因此网络拓扑结构的设计变得尤为重要。

有些AI公司选择Broadcom Tomahawk 5,有些选择Infiniband,也有一些选择英伟达的Spectrum-X。下面我们来探讨其中的原因,并比较这些方案的优劣势。

(3)AI Infra的核心:网络拓扑与并行设计

要深入理解网络拓扑结构,首先要搞懂3种不同类型的并行设计方法,即数据并行、张量并行、流水线并行。

数据并行(Data Parallelism)

数据并行是最简单的并行形式,每块GPU都拥有模型权重的完整副本,并接受不同的训练数据子集。

这种并行方式的通信要求最低,因为GPU之间只需要传递梯度数据。

但是,数据并行要求每块GPU都有足够的内存来存储整个模型的权重。这对于像 GPT-4 这样拥有1.8万亿参数的模型而言,意味着高达10.8 TB的内存占用。
在这里插入图片描述
张量并行(Tensor Parallelism)

为了克服数据并行带来的内存限制,人们发明了张量并行技术。

张量并行将模型每一层的工作和权重分布在多个GPU上,通常沿着隐藏维度进行分割。这意味着每个GPU只处理模型的一部分,而不是整个模型。

在张量并行中,GPU之间需要频繁通信,以交换中间计算结果,从外面看起来就像是一块巨型GPU一样。因此,张量并行需要高带宽和低延迟的网络连接。

通过张量并行,可以有效减少每块GPU的内存要求。比如使用8个张量并行等级进行NVLink连接时,每块GPU使用的内存可以减少8倍。在这里插入图片描述
流水线并行(Pipeline Parallelism)

另一个克服GPU内存限制的方法是流水线并行技术。

流水线并行的核心思想是将模型的不同层分配给不同的GPU,每块GPU只负责一部分层的计算。

当一块GPU完成层的前向、反向传播运算后,可以将中间结果传递给下一块GPU,自己则可以立即开始计算下一个数据批次。

使用流水线并行技术可以减少每个GPU所需的内存容量,因为每个GPU只存储模型的一部分层。

但它增加了GPU之间的通信量,每个GPU完成计算后,需要将数据传递给下一个GPU,这就要求有高效的网络连接来支持数据的快速传输。

流水线并行对通信量的要求很高,但没有张量并行那么高。在这里插入图片描述
3D并行(3D Parallelism)

为了最大限度提高模型FLOP利用率(MFU),Hyperscaler通常会将三种并行技术结合起来,形成 3D 并行。

具体做法如下:首先在H100 Server内的GPU之间使用张量并行,然后在同一个计算岛内的节点之间使用流水线并行,最后在不同计算岛之间使用数据并行。

在这里插入图片描述
4)Hyperscalers的AI集群设计方案

在理解了并行方案设计之后,我们一起来看下各家Hyperscalers超级AI算力集群的具体方案。

首先来看Meta的设计。如下图所示,这是一个包含32,000块GPU的计算集群,共有8个计算岛。在这里插入图片描述
每个计算岛内的GPU通过高带宽连接,而岛与岛之间则通过顶层交换机连接。

顶层交换机的带宽被故意设计为低于连接到下层交换机的总带宽,这种设计称为“Oversubscribe”,即带宽超额订阅。

带宽超额订阅会导致岛屿之间的通信速度降低,但在实际应用中,通常不会对性能产生太大影响,因为不是所有的服务器都会在同一时间使用最大带宽进行通信。

通过在顶层交换机上实施带宽超额订阅,平衡了性能和成本之间的关系。尽管这种设计可能会限制岛屿之间的通信带宽,但通过有效的网络管理,可以确保整个集群的运行效率,同时降低建设和维护成本。

相比Meta而言,Google则是设计了一种专门用于支持大规模TPU计算集群的网络架构,称为ICI(Inter Chiplet Interconnect)。

ICI网络能够支持最多8960块TPU芯片,每个64 TPU水冷机架之间需要通过昂贵的800G进行连接,在训练中只使用前端网络。

由于ICI网络只能扩展到一定的规模,而不是像GPU集群那样可以通过增加更多的网络层级来扩展,Google必须通过不断加强TPU前端网络来弥补这一不足。在这里插入图片描述

5)AI Infra的可靠性炼狱
可靠性是AI集群面临的一个重要挑战。

在大模型的训练过程中,GPU节点会不断宕机或报错。常见的报错有GPU HBM ECC Error、GPU驱动器卡死、光收发器故障、网卡过热等。

为了保障模型训练的持续性,降低平均故障恢复时间,数据中心必须保留热备节点。

当发生故障时,千万不要停止训练,而应该直接换上工作备用节点继续训练。

大多数情况下,对节点进行重启就可以解决问题。但在有些情况下,需要技术人员介入,对设备进行物理诊断和更换。

有时技术人员只需几小时就能修复损坏的GPU,但更多情况下,损坏的节点需要几天时间才能重新投入训练。
在这里插入图片描述
在训练模型时,我们需要经常将模型的Checkpoint保存到CPU内存或NAND SSD中,以防出现HBM ECC等错误。

当出现报错时,必须从较慢的内存层重新加载模型权重,然后重新开始训练。

但是频繁的进行Checkpointing会损害系统的整体MFU。集群需要不断暂停,对当前权重进行备份保存。

通常来说,每100次迭代会Checkpointing一次,这意味着你最多可能丢失99步有用的训练。

在一个10万卡集群上,如果每次迭代耗时2秒,那么在迭代到99次时发生故障的话,你会损失掉229 GPU天的工作量。

(6)诸神之战:博通Tomahawk 5 vs 英伟达Spectrum-X

当前建设10万张H100的超级AI算力集群,可以选择的网络方案主要有三种,分别是Broadcom Tomahawk 5,Nvidia Infiniband,以及Nvidia Spectrum-X。下面我们来详细比较这三种方案的优劣。

在大型AI集群中,Spectrum-X相比InfiniBand具有显著优势,包括性能优势、可靠性优势、以及成本优势。

Spectrum-X以太网每个SN5600交换机有128个400G端口,而InfiniBand NDR Quantum-2交换机只有64个400G端口。

需要注意的是,Broadcom的Tomahawk 5交换机ASIC也支持128个400G端口,这使得目前的InfiniBand处于非常不利的地位。

与Tomahawk相比,Spectrum-X的主要优势在于它得到了NCCL等Nvidia库的一流支持,而使用Tomahawk 5时,您需要进行大量的内部工程设计,以实现最大吞吐量。在这里插入图片描述
为了避免缴纳巨额的 Nvidia Tax,越来越多的Hyperscaler开始选择部署Broadcom Tomahawk 5方案。

每台基于Tomahawk 5的交换机的端口数与Spectrum-X SN5600交换机相同,都是128个400G端口,性能相近。

大多数客户直接与ODM合作,比如交换机方面用Celestica,收发器方面用Innolight、Eoptolink。因此Tomahawk 5的成本远低于Nvidia InfiniBand,也比Nvidia Spectrum-X便宜。

但是要想让Tomahawk 5达到和Nvidia Spectrum-X类似的表现,你需要有足够的工程能力,为Tomahawk 5优化NCCL通信集群。

Nvidia为Spectrum-X和InfiniBand提供了开箱即用的NCCL通信集合,但它不适用于Boardcom的Tomahawk 5。

Jensen一直称Nvidia为一家软件公司,软件生态为其提供了深厚的护城河。但现在越来越多的AI公司尝试弥补自身的工程能力,避免缴纳巨额的Nvidia Tax。

在这里插入图片描述
(7)BOM成本测算:10万卡AI集群需要多少Capex

定性分析完之后,我们来尝试进行定量测算。

以下详细测算了4种10万块H100构成的AI集群的设计方案的BOM成本。

这4种方案分别如下:

方案1:4层InfiniBand网络,32,768个GPU岛,轨道优化,7:1 oversubscription

方案2:3层SpectrumX网络,32,768个GPU岛,轨道优化,7:1 oversubscription

方案3:3层InfiniBand网络,24,576个GPU岛,非轨道优化,节点内前端网络

方案4:3层Broadcom Tomahawk 5以太网网络,32,768个GPU岛,轨道优化,7:1 oversubscription在这里插入图片描述
不难发现,一个10万块H100超级AI算力集群的Capex约为40亿美金。根据所选网络类型的不同,资本开支略有不同。

比较这4种方案,4层InfiniBand网络的成本是其他方案的1.3-1.6倍,这就是为什么没有人愿意选择大型InfiniBand网络的原因。

相比InfiniBand,Spectrum X提供了更大规模的计算岛、更高的岛间带宽,但它也带来了巨大的代价,即更高的功率需求。

我们认为,基于Broadcom Tomahawk 5的32k计算岛和顶层7:1的oversubscription是最具性价比的方案,这也是多家公司正在建设类似网络的原因。

由于无需支付Nvidia Tax,该方案能够在同等TCO(总体拥有成本)的条件下,提供最高的网络性能。

随着越来越多Hyperscaler选择Tomahawk 5来搭建自己的超级AI集群,博通的网络收入将继续飙升。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/40468.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

驱使ai学习搭子,写出一份“完美”的代码“文档”

自己把控“核心关键”,ai会把文档写得比您预想的“完美”。 (笔记模板由python脚本于2024年07月04日 10:44:39创建,本篇笔记适合喜欢结伴ai学习的coder翻阅) 【学习的细节是欢悦的历程】 Python 官网:https://www.python.org/ Free&#xff…

PHP房产小程序微信小程序系统源码

🏠—— 购房租房,一“指”搞定🏡 🔍【开篇:房产新视界,尽在掌握】 在这个信息爆炸的时代,找房子不再是一场漫长的奔波。有了“房产微信小程序”,无论是购房还是租房,都…

【PCIe】P2P DMA

PCIe P2P (peer-to-peer communication)是PCIe的一种特性,它使两个PCIe设备之间可以直接传输数据,而不需要使用主机RAM作为临时存储。如下图3的走向 比如EP1要发送和数据给EP2,操作流程如下: 1. 打开EP1的dma控制器;--client侧 …

配置jupyter时出现问题?怎么办?

在自己创建的虚拟环境(nmjpytorch)安装完jupyter,没有跳转到链接,问题如图: 解决方法: 1、查看自己的tornado版本为5.1.1,坑太高了,降低版本为4.5.3 2、卸载tornado-5.1.1 3、安装t…

firewalld(7)NAT、端口转发

简介 在前面的文章中已经介绍了firewalld了zone、rich rule等规则设置,并且在iptables的文章中我们介绍了网络防火墙、还有iptables的target,包括SNAT、DNAT、MASQUERADE、REDIRECT的原理和配置。那么在这篇文章中,将继续介绍在firewalld中的NAT的相关配…

git常用命令速查表

Git相关概念简述 版本库:git在本地开辟的一个存储空间,一般在 .git 文件里。工作区(workspace): 就是编辑器里面的代码,我们平常开发直接操作的就是工作区。暂存区(index/stage):暂时存放文件的…

如何用Python实现三维可视化?

Python拥有很多优秀的三维图像可视化工具,主要基于图形处理库WebGL、OpenGL或者VTK。 这些工具主要用于大规模空间标量数据、向量场数据、张量场数据等等的可视化,实际运用场景主要在海洋大气建模、飞机模型设计、桥梁设计、电磁场分析等等。 本文简单…

告别写作难题,这些AI写作工具让你文思泉涌

在现实生活中,除了专业的文字工作者,各行各业都避免不了需要写一些东西,比如策划案、论文、公文、讲话稿、总结计划……等等。而随着科技的进步,数字化时代的深入发展,AI已经成为日常工作中必不可少的工具了&#xff0…

学习LLM的随笔

1、信息量、信息熵、交叉熵和困惑度 注:因为真实分布的概率为1,所以在分类任务中交叉熵可以简化为上述形式。 (1)信息熵:信息熵中使用 l o g 2 ( p ( x ) ) log_2(p(x)) log2​(p(x)) 来表示对 x x x 编码需要的…

Linux Vim 最全面教程(Linux)

文章目录 前言一、vim工作模式1、命令模式2、编辑模式3、末行模式 二、常用其他按键说明总结 前言 vim是一款功能文本编辑器,也是早年vi编辑器的加强版,它的最大特色就是使用命令进行编辑,完全脱离了鼠标的操作。代码补全、编译和错误跳转等…

二叉树基础

一.树 1.树的定义 在计算机科学中,树是一种用于表示层次结构的抽象数据类型和非线性数据结构。树由一组节点(Nodes)和节点之间的关系(通常通过边表示)组成。 2.特性 树是一种递归的数据结构:树可以定义为…

论文学习笔记1:Federated Graph Neural Networks: Overview, Techniques, and Challenges

文章目录 一、introduction二、FedGNN术语与分类2.1主要分类法2.2辅助分类法 三、GNN-ASSISTED FL3.1Centralized FedGNNs3.2Decentralized FedGNNs 四、FL-ASSISTED GNNS4.1horizontal FedGNNs4.1.1Clients Without Missing Edges4.1.1.1Non-i.i.d. problem4.1.1.2Graph embed…

超详细!大模型面经指南(附答案)

目录 大模型(LLMs)基础面 1. 目前 主流的开源模型体系 有哪些? 2. prefix LM 和 causal LM 区别是什么? 3. 涌现能力是啥原因? 4. 大模型LLM的架构介绍? 大模型(LLMs)进阶面 1. l…

3d模型成组后可以弯曲嘛?---模大狮模型网

在展览3D模型设计领域,创新与技术不断推动着模型的复杂性和功能性。一个常见的问题是,当3D模型成组后,是否可以灵活地弯曲或调整形态?本文将深入探讨这一问题,并探索现代设计中的可能性与挑战。 一、灵活性与设计需求 3D模型在展…

小白学webgl合集-绘制有透视颜色不一样的立方体

效果 原理 结合透视矩阵和视觉矩阵进行绘制 知识点 01透视矩阵 透视矩阵将视图空间中的坐标转换为裁剪空间中的坐标,使得更远的物体看起来更小。 function perspectiveMatrix(fov, aspect, near, far) {const f 1.0 / Math.tan(fov / 2);const nf 1 / (near …

德旺训练营称重问题

这是考小学的分治策略,小学的分治策略几乎都是分三组。本着这个策略,我们做看看。 第一次称重: 分三组,16,16,17,拿两个16称,得到A情况,一样重,那么假铜钱在那组17个里面。B情况不…

亚马逊SC账号升级VC账号的新浪潮已然席卷整个电商界!

当前电商市场竞争激烈,亚马逊卖家追求业务增长。现有Amazon SC账号卖家有机会升级为VC账号,提供重要机遇。 SC账号是亚马逊常见卖家类型,为众多个人和企业提供销售平台。而VC账号则代表与亚马逊更紧密的合作关系,享有更多优惠、广…

Linux系统之安装Firefox浏览器

Linux系统之安装Firefox浏览器 一、Firefox浏览器介绍1.1 Firefox浏览器介绍1.2 Firefox浏览器特点 二、环境介绍二、本次实践环境介绍2.1 环境规划2.2 本次实践介绍 三、安装firefox浏览器3.1 安装epel3.2 检查yum仓库状态3.3 安装Firefox浏览器3.4 查看Firefox版本 四、在命令…

【图书推荐】《HTML5+CSS3 Web前端开发与实例教程(微课视频版)》

本书用来干什么 详解HTML5、CSS3、Flex布局、Grid布局、AI技巧,通过两个网站设计案例提升Web前端开发技能,为读者深入学习Web前端开发打下牢固的基础。 配套资源非常齐全,可以当Web前端基础课的教材。 内容简介 本书秉承“思政引领&#…

你的地理空间数据神器:Global Mapper 使用体验分享

你的地理空间数据神器:Global Mapper 使用体验分享 作为一名地理信息系统(GIS)专业人士,我在工作中经常需要处理各种地理空间数据。在使用过多种GIS软件后,我最终找到了一个既高效又功能强大的工具——Global Mapper。…