大家好, 我是渣B~ 不搞群不卖课,不给任何人发生财务和其它关系的渣B~ 今天来谈三个事情, 上交所的交易系统性能, Meta版的Sora, 以及最近忙着读书对GPGPU微架构的一些感触.
1. 上交所“指定交易”相关
今天上交所公告“指定交易”指令申报时间改为9:15~11:30以及13:00至15:00. 但是很多人误读了上交所这一则公告, 误认为集合竞价规则变更, 然后还有一些人在开始讨论一些沪深交易时间不一致的套利机会...
实际上“指定交易”是上交所的一个交易制度, 即开市期间接受“指定交易”申报指令, 用于指定一家会员作为买卖证券的受托人, 通过该会员参与交易所市场证券买卖. 美其名曰:“提高交易的安全性和效率”. 也就是说客户必须选择一家证券公司的营业部作为其唯一的交易和托管机构, 股票也托管在这个指定的营业部.
“指定交易”类似于内存管理中的Malloc操作, 用于绑定客户和营业部, 撮合系统在撮合前预检查需要这些相关的信息. 而这些绑定信息需要同步到撮合系统的多个撮合集群, 跨集群的分布式数据同步的代价是非常大的.另一方面在早间开盘时, 还涉及了大量的ETF申购赎回等操作也需要跨集群处理. 再加上我国股市整个成交量的分布结构.
这一系列原因造成了前期上交所性能相关的故障, 而这些性能瓶颈段时间是无法立即解决了, 毕竟修改交易系统软件不是一个简单的事情.因此就采取了早高峰时间延长允许“指定交易”指令进行申报并在集合竞价期间能够快速完成数据同步的工作.
另外, 听到一个数据, 国庆开户的7成是90后和00后, 想起4年前扯淡的一篇文章《奔涌的韭菜们~》
2. Meta Movie Gen
Video生成模型大小30B, Audio 13B, 能够生成16s 16FPS的视频
模型结构很有趣, 例如Temporal Autoencoder (TAE) 后面需要详细的去学习一下. 脑子里突然多一个东西, Temporal AutoEncoder + Spatial AutoEncoder + Sparse AutoEncoder 来构建一些东西应该很有趣?
然后整个模型用6144张H100
并行策略:
3. GPU微架构
假期里很长一段时间都在重新阅读《Computer Architecture: A Quantitative Approach》, 带着不同的问题读, 有很多反思, 英伟达自从添加TensorCore后架构越来越DSA化, WGMMA临时性的架构再加上TMA这些东西在Hopper发布两年后才在TK, FA3中落地使用...
所以渣B在《再谈谈三万亿的破绽》中探讨了GPGPU架构遇到的种种问题, 老黄为了卖卡疯狂的堆料感觉就是在做一个“违背祖训(SIMT)”的决定. 其实回过头来看, 似乎针对数据中心/AI场景又出现了一个固定流水线的模式, 例如Cutlass
其实和当年早期的GPU很类似了:
对于当代的GPGPU也很明确的分成了TensorCore和SIMT Cuda Core两块, 如何让TensorCore inter-warp共享寄存器文件? 并且能够继续像SIMT那样优雅的编程? 偶然翻到一篇两个月前UCB的论文《Virgo: Cluster-level Matrix Unit Integration in GPUs for Scalability and Energy Efficiency》[1]
通过共享内存将多个SIMT Core和Tensor Core相连, TensorCore采用大规模的脉动阵列.
功耗来看也有点意思:
是不是整个GPGPU微架构会因为GEMM的大量使用, 以及各种xxx并行策略, 又回到一个类似于OpenGL/D3d那样的固定流水管线的年代?
看着当年SGI的板子和如今的NVL72, 越来越像
Virgo: Cluster-level Matrix Unit Integration in GPUs for Scalability and Energy Efficiency: https://arxiv.org/html/2408.12073v1