Telegram Group & Telegram Channel
🌟 MetaShuffling ΠΎΡ‚ PyTorch: ускоряСм Π²Ρ‹Π²ΠΎΠ΄ Llama 4 MoE Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… вычислСний ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ.

PyTorch прСдставил MetaShuffling β€” Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для ускорСния Π²Ρ‹Π²ΠΎΠ΄Π° Π² Llama 4 MoE, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π΄ΠΈΠ½Π°ΠΌΠΈΠ·ΠΌΠ° ΠΈ разрСТСнности ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, связанных с ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². ВмСсто Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² padding ΠΈΠ»ΠΈ slicing, MetaShuffling ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ пСрСупорядочиваниС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΏΠΎ экспСртам, избавляясь ΠΎΡ‚ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ синхронизации ΠΌΠ΅ΠΆΠ΄Ρƒ CPU ΠΈ GPU. Π­Ρ‚ΠΎ сниТаСт использованиС памяти ΠΈ устраняСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, связанныС с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Β«ΠΏΡƒΡΡ‚Ρ‹ΡˆΠ΅ΠΊΒ» ΠΈΠ»ΠΈ мноТСствСнными запусками ядСр.

Π’ основС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ - идСя Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ², Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠΌΡƒ экспСрту, Π² Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ dense tensors вмСсто Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½Ρ‹Ρ… структур, сохраняя статичныС Ρ„ΠΎΡ€ΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Благодаря этому MetaShuffling совмСстим с ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ Π³Ρ€Π°Ρ„ΠΎΠ² (CUDAGraph, torch.compile), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡΠΊΠΎΡ€ΡΡŽΡ‚ исполнСниС, избСгая ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… синхронизаций. РСшСниС особСнно эффСктивно для Llama 4, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ MoE-слой Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ лишь Ρ‡Π°ΡΡ‚ΡŒ экспСртов, Ρ‡Ρ‚ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ создаСт динамичСскиС Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.

β–ΆοΈΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ инновациями стали оптимизация ядСр GroupedGEMM ΠΈ IndexShuffling:

🟒GroupedGEMM, написанный Π½Π° Triton, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ нСсколько ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π² ΠΎΠ΄Π½ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ статичСскиС ΠΈ динамичСскиС разбиСния Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ², позволяя ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… экспСртов ΠΈ «лишниС» Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚.

🟒IndexShuffling, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, выполняСт сортировку Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ подсчСт ΠΈΡ… количСства Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ экспСртС Π·Π° ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΡ…ΠΎΠ΄, Ρ‡Ρ‚ΠΎ ΠΏΠΎ тСстам оказалось Π² 5–13 Ρ€Π°Π· быстрСС, Ρ‡Π΅ΠΌ стандартныС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ PyTorch.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ экспСримСнтов Π½Π° H100 80GB выглядят ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅Ρ‰Π°ΡŽΡ‰ΠΈΠΌΠΈ.

Prefill Llama 4 Maverick с FP8 GroupedGEMM достигаСт 1,197 TFlops ΠΏΡ€ΠΈ 286 мкс, Ρ‡Ρ‚ΠΎ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ тСорСтичСскому ΠΏΡ€Π΅Π΄Π΅Π»Ρƒ GPU.

Π’ Π·Π°Π΄Π°Ρ‡Π°Ρ… дСкодирования ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ: 44,88 TFlops Π·Π° 59 мкс. Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΠΌΠ°Π»ΠΎΠΌ количСствС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² (128) MetaShuffling ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ 80% использования пропускной способности памяти.

Для multi-host сцСнариСв MetaShuffling ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ «динамичСскими» ΠΈ «статичными» Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ eager (Π±Π΅Π· Π³Ρ€Π°Ρ„ΠΎΠ²) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ минимальноС Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±Π΅Π· синхронизации CPU-GPU.

Π’ graph mode β€” статичныС Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ°Π΄Π΄ΠΈΠ½Π³ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сокращаСт сСтСвой Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΈ ΠΏΠ°ΠΌΡΡ‚ΡŒ. Π’Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° дСдупликация ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ, которая распрСдСляСт Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΡƒΠ·Π»Π°ΠΌΠΈ, сниТая Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² распрСдСлСнных вычислСниях.

MetaShuffling ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ с FBGEMM Generative AI Kernel Library, позволяя ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ для vLLM ΠΈ SGLang.


πŸ“Œ Полная ΡΡ‚Π°Ρ‚ΡŒΡ Π² Π±Π»ΠΎΠ³Π΅ Pytorch


@ai_machinelearning_big_data

#AI #ML #MetaShuffling #Pytorch
Please open Telegram to view this post
VIEW IN TELEGRAM



group-telegram.com/ai_machinelearning_big_data/7578
Create:
Last Update:

🌟 MetaShuffling ΠΎΡ‚ PyTorch: ускоряСм Π²Ρ‹Π²ΠΎΠ΄ Llama 4 MoE Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… вычислСний ΠΈ Π·Π°Π΄Π΅Ρ€ΠΆΠ΅ΠΊ.

PyTorch прСдставил MetaShuffling β€” Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для ускорСния Π²Ρ‹Π²ΠΎΠ΄Π° Π² Llama 4 MoE, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ€Π΅ΡˆΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π΄ΠΈΠ½Π°ΠΌΠΈΠ·ΠΌΠ° ΠΈ разрСТСнности ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, связанных с ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². ВмСсто Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² padding ΠΈΠ»ΠΈ slicing, MetaShuffling ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ пСрСупорядочиваниС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΏΠΎ экспСртам, избавляясь ΠΎΡ‚ Π½Π΅Π½ΡƒΠΆΠ½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ синхронизации ΠΌΠ΅ΠΆΠ΄Ρƒ CPU ΠΈ GPU. Π­Ρ‚ΠΎ сниТаСт использованиС памяти ΠΈ устраняСт Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ, связанныС с ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΎΠΉ Β«ΠΏΡƒΡΡ‚Ρ‹ΡˆΠ΅ΠΊΒ» ΠΈΠ»ΠΈ мноТСствСнными запусками ядСр.

Π’ основС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ - идСя Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ², Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΎΠ΄Π½ΠΎΠΌΡƒ экспСрту, Π² Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ. Π’Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ dense tensors вмСсто Ρ€Π°Π·Ρ€Π΅ΠΆΠ΅Π½Π½Ρ‹Ρ… структур, сохраняя статичныС Ρ„ΠΎΡ€ΠΌΡ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Благодаря этому MetaShuffling совмСстим с ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ°ΠΌΠΈ Π³Ρ€Π°Ρ„ΠΎΠ² (CUDAGraph, torch.compile), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΡΠΊΠΎΡ€ΡΡŽΡ‚ исполнСниС, избСгая ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½Ρ‹Ρ… синхронизаций. РСшСниС особСнно эффСктивно для Llama 4, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ MoE-слой Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΠ΅Ρ‚ лишь Ρ‡Π°ΡΡ‚ΡŒ экспСртов, Ρ‡Ρ‚ΠΎ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ создаСт динамичСскиС Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ.

β–ΆοΈΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌΠΈ инновациями стали оптимизация ядСр GroupedGEMM ΠΈ IndexShuffling:

🟒GroupedGEMM, написанный Π½Π° Triton, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ нСсколько ΠΌΠ°Ρ‚Ρ€ΠΈΡ† Π² ΠΎΠ΄Π½ΠΎΠΌ Π²Ρ‹Π·ΠΎΠ²Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ статичСскиС ΠΈ динамичСскиС разбиСния Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠ², позволяя ΠΏΡ€ΠΎΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π½Π΅Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… экспСртов ΠΈ «лишниС» Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π°Ρ‚Ρ€Π°Ρ‚.

🟒IndexShuffling, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, выполняСт сортировку Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ подсчСт ΠΈΡ… количСства Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ экспСртС Π·Π° ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΎΡ…ΠΎΠ΄, Ρ‡Ρ‚ΠΎ ΠΏΠΎ тСстам оказалось Π² 5–13 Ρ€Π°Π· быстрСС, Ρ‡Π΅ΠΌ стандартныС Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ PyTorch.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ экспСримСнтов Π½Π° H100 80GB выглядят ΠΌΠ½ΠΎΠ³ΠΎΠΎΠ±Π΅Ρ‰Π°ΡŽΡ‰ΠΈΠΌΠΈ.

Prefill Llama 4 Maverick с FP8 GroupedGEMM достигаСт 1,197 TFlops ΠΏΡ€ΠΈ 286 мкс, Ρ‡Ρ‚ΠΎ Π±Π»ΠΈΠ·ΠΊΠΎ ΠΊ тСорСтичСскому ΠΏΡ€Π΅Π΄Π΅Π»Ρƒ GPU.

Π’ Π·Π°Π΄Π°Ρ‡Π°Ρ… дСкодирования ΠΌΠ΅Ρ‚Ρ€ΠΈΠΊΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ: 44,88 TFlops Π·Π° 59 мкс. Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ ΠΌΠ°Π»ΠΎΠΌ количСствС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² (128) MetaShuffling ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ 80% использования пропускной способности памяти.

Для multi-host сцСнариСв MetaShuffling ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ «динамичСскими» ΠΈ «статичными» Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ eager (Π±Π΅Π· Π³Ρ€Π°Ρ„ΠΎΠ²) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ минимальноС Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π±Π΅Π· синхронизации CPU-GPU.

Π’ graph mode β€” статичныС Ρ„ΠΎΡ€ΠΌΡ‹ с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ°Π΄Π΄ΠΈΠ½Π³ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сокращаСт сСтСвой Ρ‚Ρ€Π°Ρ„ΠΈΠΊ ΠΈ ΠΏΠ°ΠΌΡΡ‚ΡŒ. Π’Π°ΠΊΠΆΠ΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π° дСдупликация ΠΊΠΎΠΌΠΌΡƒΠ½ΠΈΠΊΠ°Ρ†ΠΈΠΉ, которая распрСдСляСт Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ ΠΌΠ΅ΠΆΠ΄Ρƒ ΡƒΠ·Π»Π°ΠΌΠΈ, сниТая Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ Π² распрСдСлСнных вычислСниях.

MetaShuffling ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ с FBGEMM Generative AI Kernel Library, позволяя ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ для vLLM ΠΈ SGLang.


πŸ“Œ Полная ΡΡ‚Π°Ρ‚ΡŒΡ Π² Π±Π»ΠΎΠ³Π΅ Pytorch


@ai_machinelearning_big_data

#AI #ML #MetaShuffling #Pytorch

BY Machinelearning




Share with your friend now:
group-telegram.com/ai_machinelearning_big_data/7578

View MORE
Open in Telegram


Telegram | DID YOU KNOW?

Date: |

The regulator said it had received information that messages containing stock tips and other investment advice with respect to selected listed companies are being widely circulated through websites and social media platforms such as Telegram, Facebook, WhatsApp and Instagram. And while money initially moved into stocks in the morning, capital moved out of safe-haven assets. The price of the 10-year Treasury note fell Friday, sending its yield up to 2% from a March closing low of 1.73%. "He has kind of an old-school cyber-libertarian world view where technology is there to set you free," MarΓ©chal said. Individual messages can be fully encrypted. But the user has to turn on that function. It's not automatic, as it is on Signal and WhatsApp. The picture was mixed overseas. Hong Kong’s Hang Seng Index fell 1.6%, under pressure from U.S. regulatory scrutiny on New York-listed Chinese companies. Stocks were more buoyant in Europe, where Frankfurt’s DAX surged 1.4%.
from us


Telegram Machinelearning
FROM American