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: |

"There are a lot of things that Telegram could have been doing this whole time. And they know exactly what they are and they've chosen not to do them. That's why I don't trust them," she said. But Telegram says people want to keep their chat history when they get a new phone, and they like having a data backup that will sync their chats across multiple devices. And that is why they let people choose whether they want their messages to be encrypted or not. When not turned on, though, chats are stored on Telegram's services, which are scattered throughout the world. But it has "disclosed 0 bytes of user data to third parties, including governments," Telegram states on its website. Telegram Messenger Blocks Navalny Bot During Russian Election The next bit isn’t clear, but Durov reportedly claimed that his resignation, dated March 21st, was an April Fools’ prank. TechCrunch implies that it was a matter of principle, but it’s hard to be clear on the wheres, whos and whys. Similarly, on April 17th, the Moscow Times quoted Durov as saying that he quit the company after being pressured to reveal account details about Ukrainians protesting the then-president Viktor Yanukovych. Markets continued to grapple with the economic and corporate earnings implications relating to the Russia-Ukraine conflict. β€œWe have a ton of uncertainty right now,” said Stephanie Link, chief investment strategist and portfolio manager at Hightower Advisors. β€œWe’re dealing with a war, we’re dealing with inflation. We don’t know what it means to earnings.”
from cn


Telegram Machinelearning
FROM American