Бенчмарки
Поки ви читаєте це речення*, одне ядро процесора встигає розібрати 320 000 000 кадрів протоколу.
Це наші власні заміри нашого власного коду. Чужих цифр не публікуємо: ми їх не вимірювали.
Кожне число — медіана трьох прогонів бенчмарка Go на зазначеній машині, час на одну операцію. Що менше виділень пам'яті, то менше роботи збирачу сміття і то рівніша затримка під навантаженням.
Мікробенчмарк вимірює один крок на прогрітому процесорі, а не доставку цілком: мережа, диск та інша сторона додають свій час. Менше — краще.
Кожне порівняння — за часом найшвидшого процесора; швидкість або частота, на якій воно ґрунтується, вказана в дужках.
* Середній читач прочитує речення приблизно за три секунди (238 слів за хвилину, Brysbaert 2019).
Кадри протоколу
| Операція | Apple M3 Max | Intel Xeon D-1531 | Intel Core i5-3380M | ARM Cortex-A76 / Cortex-A55 | Що це показує |
|---|---|---|---|---|---|
| Закодувати кадр у буфер, одне ядро | 20,3 ns виділень пам’яті: 0 | 49,2 ns виділень пам’яті: 0 | 46,4 ns виділень пам’яті: 0 | 65,4 ns виділень пам’яті: 0 | Кожне повідомлення, пакет дзвінка й шматок файлу перед відправленням пакуються в кадр. Таких операцій за один розряд нейрона в мозку (близько 1 ms): 49 000. |
| Закодувати кадр, усі ядра одночасно (час на кадр) | 3,2 ns виділень пам’яті: 0 | 11,2 ns виділень пам’яті: 0 | 23,1 ns виділень пам’яті: 0 | 20,3 ns виділень пам’яті: 0 | Те саме пакування одразу на всіх ядрах одного комп’ютера: сотні мільйонів кадрів за секунду. Таких операцій за один спалах фотоапарата (близько 1 ms): 320 000. |
| Розібрати кадр | 9,5 ns виділень пам’яті: 0 | 30,3 ns виділень пам’яті: 0 | 24,1 ns виділень пам’яті: 0 | 33,3 ns виділень пам’яті: 0 | Читання вхідного кадру — перше, що робиться з усім, що надходить. За цей час світло у вакуумі (300 000 km/s) встигає пройти 2,8 m. |
| Закодувати й розібрати заголовок і дані медіакадру | 207 ns виділень пам’яті: 1 | 1,4 µs виділень пам’яті: 1 | 1,0 µs виділень пам’яті: 1 | 914 ns виділень пам’яті: 1 | Запакувати й прочитати шматок звуку чи картинки дзвінка разом із його часом. Таких операцій за один помах крил комара (600 за секунду): 8 100. |
Наскрізне шифрування
| Операція | Apple M3 Max | Intel Xeon D-1531 | Intel Core i5-3380M | ARM Cortex-A76 / Cortex-A55 | Що це показує |
|---|---|---|---|---|---|
| Зашифрувати аудіокадр дзвінка (100 байт) | 128 ns виділень пам’яті: 2 | 838 ns виділень пам’яті: 2 | 844 ns виділень пам’яті: 2 | 502 ns виділень пам’яті: 2 | Кожні 20 мілісекунд вашого голосу шифруються на пристрої ще до відправлення; це один такий шматок. Гепард на повній швидкості (29 m/s) за цей час пробігає лише 3,7 µm — це тонше за людську волосину (близько 70 µm). |
| Зашифрувати відеокадр дзвінка (20 КБ) | 2,7 µs виділень пам’яті: 2 | 12,2 µs виділень пам’яті: 2 | 17,9 µs виділень пам’яті: 2 | 13,3 µs виділень пам’яті: 2 | Шматок відеокадру, зашифрований наскрізним шифруванням, щоб його бачили лише учасники дзвінка. Таких операцій за одне клацання пальцями (близько 7 ms): 2 600. |
| Зашифрувати повідомлення, новим ключем для кожного повідомлення | 1,4 µs виділень пам’яті: 7 | 23,1 µs виділень пам’яті: 7 | 28,5 µs виділень пам’яті: 7 | 8,5 µs виділень пам’яті: 7 | Кожне повідомлення отримує власний ключ, тож ключ, що витік, не відкриє нічого іншого; ось скільки це коштує на повідомлення. Таких операцій за один удар серця (72 удари за хвилину): 590 000. |
| Розшифрувати повідомлення | 1,5 µs виділень пам’яті: 8 | 23,2 µs виділень пам’яті: 8 | 30,1 µs виділень пам’яті: 8 | 8,7 µs виділень пам’яті: 8 | Відкрити таке повідомлення на іншому боці. Таких операцій за одне вимовлене слово (150 слів за хвилину): 270 000. |
| Перевірити підписаний список пристроїв користувача | 35,7 µs виділень пам’яті: 9 | 216 µs виділень пам’яті: 9 | 195 µs виділень пам’яті: 9 | 299 µs виділень пам’яті: 9 | Перш ніж шифрувати комусь, застосунок перевіряє, що список його пристроїв підписаний ним самим, і ніхто не підсуне свій пристрій. За цей час сигнал найшвидшими нервами людини (120 m/s) встигає пробігти 4,3 mm. |
| Зашифрувати файл 50 МБ | 10,7 ms виділень пам’яті: 3207 | 103 ms виділень пам’яті: 3207 | 116 ms виділень пам’яті: 3207 | 71,4 ms виділень пам’яті: 3207 | Відео на 50 МБ шифрується на вашому пристрої перед відправленням. За цей час «Вояджер-1» (17 km/s) встигає пролетіти 180 m. |
| Розшифрувати файл 50 МБ | 8,1 ms виділень пам’яті: 1605 | 36,0 ms виділень пам’яті: 1605 | 50,6 ms виділень пам’яті: 1605 | 40,0 ms виділень пам’яті: 1605 | Те саме відео розшифровується на пристрої одержувача. Помахів крил медоносної бджоли (230 за секунду) за цей час: 1,9. |
Сервер: дзвінки й групи
| Операція | Apple M3 Max | Intel Xeon D-1531 | Intel Core i5-3380M | ARM Cortex-A76 / Cortex-A55 | Що це показує |
|---|---|---|---|---|---|
| Прийняти аудіокадр дзвінка | 95,5 ns виділень пам’яті: 1 | 650 ns виділень пам’яті: 1 | 216 ns виділень пам’яті: 1 | 453 ns виділень пам’яті: 1 | Сервер приймає шматок чийогось голосу під час дзвінка. Таких операцій за один кадр кіноплівки (24 за секунду): 440 000. |
| Прийняти відеофрагмент дзвінка | 315 ns виділень пам’яті: 1 | 1,7 µs виділень пам’яті: 1 | 797 ns виділень пам’яті: 1 | 1,5 µs виділень пам’яті: 1 | Сервер приймає шматок чиєїсь картинки під час дзвінка. Таких операцій за один помах крил колібрі (50 за секунду): 64 000. |
| Спрямувати вхідний аудіокадр | 68,2 ns виділень пам’яті: 1 | 348 ns виділень пам’яті: 1 | 267 ns виділень пам’яті: 1 | 359 ns виділень пам’яті: 1 | Вирішити, куди далі йде шматок голосу, що надійшов. Коливань хвилі зеленого світла (545 THz) за цей час: 37 000 000. |
| Передати кадр дзвінка іншій стороні особистого дзвінка | 241 ns виділень пам’яті: 1 | 1,9 µs виділень пам’яті: 1 | 1,4 µs виділень пам’яті: 1 | 1,9 µs виділень пам’яті: 1 | Передати пакет дзвінка співрозмовнику в особистому дзвінку. Таких операцій за період напіврозпаду полонію-212 — час, за який розпадається половина його атомів (299 ns): 1,2. |
| Надіслати відеокадр 8 глядачам групового дзвінка | 1,5 µs виділень пам’яті: 8 | 13,9 µs виділень пам’яті: 8 | 6,3 µs виділень пам’яті: 8 | 13,2 µs виділень пам’яті: 8 | Уся робота сервера, щоб надіслати один відеокадр 8 учасникам групового дзвінка. За цей час клешня рака-богомола, один із найшвидших ударів у природі (23 m/s), встигає зсунутися лише на 34 µm — це тонше за людську волосину (близько 70 µm). |
| Надіслати відеокадр 64 глядачам | 11,1 µs виділень пам’яті: 64 | 88,3 µs виділень пам’яті: 64 | 46,6 µs виділень пам’яті: 64 | 84,3 µs виділень пам’яті: 64 | Те саме для 64 учасників. За цей час Місяць на своїй орбіті (1,02 km/s) встигає пролетіти 11 mm. |
| Надіслати відеокадр 255 глядачам | 42,8 µs виділень пам’яті: 255 | 336 µs виділень пам’яті: 255 | 187 µs виділень пам’яті: 255 | 331 µs виділень пам’яті: 255 | Те саме для 255 учасників. За цей час Усейн Болт на піку швидкості (12,4 m/s) встигає пробігти лише 530 µm. |
| Надіслати голос того, хто говорить, 255 учасникам | 8,9 µs виділень пам’яті: 255 | 93,7 µs виділень пам’яті: 255 | 34,7 µs виділень пам’яті: 255 | 75,2 µs виділень пам’яті: 255 | Надіслати голос того, хто говорить, усім у дзвінку на 255 осіб. За цей час м’яч після найшвидшої подачі в історії тенісу (73 m/s) встигає пролетіти лише 650 µm. |
| Відкинути голос із вимкненим мікрофоном | 33,3 ns виділень пам’яті: 0 | 137 ns виділень пам’яті: 0 | 98,3 ns виділень пам’яті: 0 | 127 ns виділень пам’яті: 0 | Звук вимкненого мікрофона відкидається одразу й майже нічого не коштує. Куля найшвидшого серійного патрона, .220 Swift (близько 1220 m/s), за цей час пролітає лише 41 µm — це тонше за людську волосину (близько 70 µm). |
| Зберегти й роздати повідомлення в групі на 1000 учасників | 48,9 µs виділень пам’яті: 73 | 367 µs виділень пам’яті: 72 | 128 µs виділень пам’яті: 71 | 212 µs виділень пам’яті: 71 | Повідомлення в групі на 1000 учасників зберігається й роздається всім. Таких операцій за 0,1 s — найшвидшу реакцію на стартовий постріл, яку визнає World Athletics: 2 000. |
| Поставити відеокадр у чергу з'єднання | 369 ns виділень пам’яті: 2 | 2,8 µs виділень пам’яті: 2 | 1,1 µs виділень пам’яті: 2 | 1,9 µs виділень пам’яті: 2 | Поставити відеокадр у чергу з’єднання на відправлення. Таких операцій за найкоротшу витримку фотоапарата (1/4000 s): 680. |
| Передати медіакадр між потоками | 218 ns виділень пам’яті: 0 | 378 ns виділень пам’яті: 0 | 126 ns виділень пам’яті: 0 | 210 ns виділень пам’яті: 0 | Передати шматок дзвінка від одного ядра процесора іншому. Таких операцій за одне коливання ноти ля на піаніно (440 Hz): 18 000. |
| Переслати аудіопакет 4 учасникам через буфери потоків | 267 ns виділень пам’яті: 0 | 594 ns виділень пам’яті: 0 | 560 ns виділень пам’яті: 0 | 795 ns виділень пам’яті: 0 | Переслати шматок звуку 4 іншим учасникам дзвінка через їхні буфери. За цей час сапсан у піке (90 m/s) встигає пролетіти лише 24 µm — це тонше за людську волосину (близько 70 µm). |
Клієнтський SDK
| Операція | Apple M3 Max | Intel Xeon D-1531 | Intel Core i5-3380M | ARM Cortex-A76 / Cortex-A55 | Що це показує |
|---|---|---|---|---|---|
| Зашифрувати й розшифрувати повідомлення разом зі сховищем ключів | 5,2 µs виділень пам’яті: 33 | 64,1 µs виділень пам’яті: 28 | 74,0 µs виділень пам’яті: 28 | 32,0 µs виділень пам’яті: 28 | На вашому пристрої: зашифрувати повідомлення й розшифрувати відповідь разом із ключами. Таких операцій за одне кліпання (близько 0,3 s): 58 000. |
| Прийняти відеофрагмент | 46,3 ns виділень пам’яті: 2 | 502 ns виділень пам’яті: 2 | 382 ns виділень пам’яті: 2 | 376 ns виділень пам’яті: 2 | На вашому пристрої: прийняти шматок картинки дзвінка. Таких операцій за одне позіхання (близько 6 s): 130 000 000. |
| Розрізати відеокадр на фрагменти й зберегти його для повторного надсилання | 6,2 µs виділень пам’яті: 15 | 30,0 µs виділень пам’яті: 15 | 28,7 µs виділень пам’яті: 15 | 25,5 µs виділень пам’яті: 15 | На вашому пристрої: розрізати відеокадр на мережеві шматки й зберегти його на випадок втрати. За цей час Міжнародна космічна станція (7,66 km/s) встигає пролетіти 48 mm. |
Навіть Флеш не встиг би помітити, як ми розбираємо кадр. Утім, Флеша в лабораторії ще ніхто не вимірював.
Сирий вивід
Кожен прогін так, як його надрукував Go, з процесором і датою:
Apple M3 Max, 2026-11-02
# date: 2026-11-02T15:37Z # go: go1.27.3 darwin/arm64, CGO_ENABLED=0 # benchtime: 4s, count: 3 # cpu: Apple M3 Max, 16 cores, 64 GB BenchmarkEncodeInto_Parallel-16 1000000000 3.154 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-16 1000000000 3.367 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-16 1000000000 3.131 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-16 504770032 9.490 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-16 506056022 9.457 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-16 507194679 9.486 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-16 237371084 20.26 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-16 236236466 20.08 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-16 236528295 20.31 ns/op 0 B/op 0 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-16 23088573 206.8 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-16 22862259 202.7 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-16 21501160 219.4 ns/op 1536 B/op 1 allocs/op BenchmarkCallSeal/audio100B-16 36842448 128.7 ns/op 777.23 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-16 37917124 128.5 ns/op 778.00 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-16 37502478 128.1 ns/op 780.36 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-16 1785961 2693 ns/op 7426.11 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-16 1777422 2696 ns/op 7418.21 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-16 1780614 2701 ns/op 7404.46 MB/s 32 B/op 2 allocs/op BenchmarkSealMessage-16 3386436 1406 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-16 3418846 1410 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-16 3370858 1428 ns/op 2000 B/op 7 allocs/op BenchmarkOpenMessage-16 3288679 1459 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-16 3277401 1457 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-16 3389536 1413 ns/op 2000 B/op 8 allocs/op BenchmarkRecordVerify-16 135189 35588 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-16 134028 36342 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-16 132242 35657 ns/op 7240 B/op 9 allocs/op BenchmarkSealFile50MB-16 451 10555046 ns/op 4967.18 MB/s 111632562 B/op 3207 allocs/op BenchmarkSealFile50MB-16 444 10728085 ns/op 4887.06 MB/s 111632586 B/op 3207 allocs/op BenchmarkSealFile50MB-16 450 10818007 ns/op 4846.44 MB/s 111632563 B/op 3207 allocs/op BenchmarkOpenFile50MB-16 588 8339192 ns/op 6287.04 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-16 596 8060851 ns/op 6504.13 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-16 596 8050707 ns/op 6512.32 MB/s 366384 B/op 1605 allocs/op BenchmarkFanOutMedia/members_2-16 16989366 285.5 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-16 19884364 240.9 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-16 20752706 227.0 ns/op 1280 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-16 48916843 95.52 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-16 47636355 96.77 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-16 54385850 94.67 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-16 15539823 313.7 ns/op 1281 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-16 15261049 314.9 ns/op 1281 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-16 14410549 321.3 ns/op 1281 B/op 1 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-16 2356322 1960 ns/op 11014 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-16 3278673 1476 ns/op 11012 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-16 3116676 1486 ns/op 11012 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-16 441787 11313 ns/op 82720 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-16 385519 10771 ns/op 82719 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-16 414454 11073 ns/op 82720 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-16 112650 42810 ns/op 327284 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-16 106978 43832 ns/op 327287 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-16 112598 42645 ns/op 327284 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-16 518439 9284 ns/op 38647 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-16 553611 8946 ns/op 38647 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-16 528856 8688 ns/op 38646 B/op 255 allocs/op BenchmarkFanOutGroupAudio/muted-16 143029897 33.50 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-16 144313339 33.33 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-16 143070267 33.17 ns/op 0 B/op 0 allocs/op BenchmarkGroupSend_1000Members-16 97407 48582 ns/op 6738 B/op 73 allocs/op BenchmarkGroupSend_1000Members-16 97256 49208 ns/op 6737 B/op 73 allocs/op BenchmarkGroupSend_1000Members-16 98064 48878 ns/op 6734 B/op 73 allocs/op BenchmarkRouteFrame_MediaAudio-16 69810270 67.52 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-16 71526848 68.55 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-16 67967208 68.21 ns/op 16 B/op 1 allocs/op BenchmarkSendFrame_MediaVideo-16 12772462 380.0 ns/op 2081 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-16 12805062 368.6 ns/op 2081 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-16 15066264 309.5 ns/op 2080 B/op 2 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-16 29066954 146.9 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-16 22442206 217.5 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-16 21782367 217.6 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-16 18385899 266.2 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-16 18752104 275.7 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-16 18662005 267.1 ns/op 0 B/op 0 allocs/op BenchmarkE2EESealOpen-16 921933 5162 ns/op 6289 B/op 33 allocs/op BenchmarkE2EESealOpen-16 1000000 5196 ns/op 6433 B/op 33 allocs/op BenchmarkE2EESealOpen-16 1000000 5252 ns/op 6493 B/op 33 allocs/op BenchmarkSendVideoFrame_Kept-16 1000000 5487 ns/op 10151 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-16 1000000 6214 ns/op 10151 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-16 1000000 6849 ns/op 10151 B/op 15 allocs/op BenchmarkHandleMediaFrame_Video-16 100000000 46.28 ns/op 79 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-16 100000000 45.51 ns/op 79 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-16 99449917 46.58 ns/op 78 B/op 2 allocs/op
Intel Xeon D-1531, 2026-11-02
# date: 2026-11-02T15:24Z # go: go1.27.3 linux/amd64, CGO_ENABLED=0 # benchtime: 4s, count: 3 # cpu: Intel(R) Xeon(R) CPU D-1531 @ 2.20GHz, 12 cores, 30 GB BenchmarkEncodeInto_Parallel-12 426285850 11.22 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-12 564850032 11.35 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-12 745559997 6.604 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-12 154246438 29.99 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-12 160913011 30.50 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-12 149424217 30.33 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-12 95576382 49.29 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-12 96809577 49.19 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-12 87528913 49.16 ns/op 0 B/op 0 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-12 3827731 1441 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-12 3398870 1372 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-12 3610368 1433 ns/op 1536 B/op 1 allocs/op BenchmarkCallSeal/audio100B-12 5639319 794.3 ns/op 125.90 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-12 5745420 859.5 ns/op 116.35 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-12 5486569 838.4 ns/op 119.28 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-12 394490 12256 ns/op 1631.91 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-12 387884 12194 ns/op 1640.10 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-12 364636 11781 ns/op 1697.61 MB/s 32 B/op 2 allocs/op BenchmarkSealMessage-12 181906 23364 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-12 222669 22192 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-12 187498 23129 ns/op 2000 B/op 7 allocs/op BenchmarkOpenMessage-12 197852 23214 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-12 239305 22238 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-12 183633 24050 ns/op 2000 B/op 8 allocs/op BenchmarkRecordVerify-12 24093 207867 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-12 22466 222306 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-12 22504 215656 ns/op 7240 B/op 9 allocs/op BenchmarkSealFile50MB-12 42 102326386 ns/op 512.37 MB/s 111632268 B/op 3207 allocs/op BenchmarkSealFile50MB-12 82 103035209 ns/op 508.84 MB/s 111632148 B/op 3207 allocs/op BenchmarkSealFile50MB-12 49 105321591 ns/op 497.80 MB/s 111632402 B/op 3207 allocs/op BenchmarkOpenFile50MB-12 132 36527806 ns/op 1435.31 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-12 132 35998909 ns/op 1456.40 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-12 135 35599738 ns/op 1472.73 MB/s 366384 B/op 1605 allocs/op BenchmarkFanOutMedia/members_2-12 2223702 2192 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-12 2395420 1940 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-12 2730670 1746 ns/op 1280 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-12 10278273 649.8 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-12 7886887 631.7 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-12 6403392 680.9 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-12 2598075 1681 ns/op 1281 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-12 2828007 1812 ns/op 1281 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-12 2971468 1744 ns/op 1281 B/op 1 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-12 409371 15174 ns/op 11013 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-12 387454 13918 ns/op 11012 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-12 369820 11694 ns/op 11012 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-12 57816 88903 ns/op 82717 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-12 57054 80356 ns/op 82717 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-12 49814 88264 ns/op 82717 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-12 14289 336441 ns/op 327282 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-12 14334 329034 ns/op 327282 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-12 14161 343431 ns/op 327281 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-12 55279 97136 ns/op 38646 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-12 53641 92363 ns/op 38646 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-12 64398 93707 ns/op 38646 B/op 255 allocs/op BenchmarkFanOutGroupAudio/muted-12 35486358 142.3 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-12 31994094 136.8 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-12 36242248 136.8 ns/op 0 B/op 0 allocs/op BenchmarkGroupSend_1000Members-12 12096 360862 ns/op 7743 B/op 72 allocs/op BenchmarkGroupSend_1000Members-12 13513 367267 ns/op 7594 B/op 72 allocs/op BenchmarkGroupSend_1000Members-12 13586 377079 ns/op 7580 B/op 72 allocs/op BenchmarkRouteFrame_MediaAudio-12 15414775 348.1 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-12 12242936 354.9 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-12 15687060 338.2 ns/op 16 B/op 1 allocs/op BenchmarkSendFrame_MediaVideo-12 1604983 2788 ns/op 2080 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-12 1841704 3122 ns/op 2080 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-12 1741256 2841 ns/op 2080 B/op 2 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-12 22765195 378.4 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-12 12213650 334.2 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-12 11657671 422.6 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-12 7482218 594.0 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-12 7721034 585.0 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-12 7918773 602.5 ns/op 0 B/op 0 allocs/op BenchmarkE2EESealOpen-12 68706 64129 ns/op 4344 B/op 28 allocs/op BenchmarkE2EESealOpen-12 81541 63503 ns/op 4376 B/op 28 allocs/op BenchmarkE2EESealOpen-12 83989 66415 ns/op 4381 B/op 28 allocs/op BenchmarkSendVideoFrame_Kept-12 253933 28292 ns/op 10071 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-12 455150 34245 ns/op 10036 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-12 489981 29963 ns/op 10044 B/op 15 allocs/op BenchmarkHandleMediaFrame_Video-12 10623702 501.6 ns/op 70 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-12 11533372 479.8 ns/op 71 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-12 8887135 504.2 ns/op 70 B/op 2 allocs/op
Intel Core i5-3380M, 2026-11-02
# date: 2026-11-02T14:59Z # go: go1.27.3 linux/amd64, CGO_ENABLED=0 # benchtime: 4s, count: 3 # cpu: Intel(R) Core(TM) i5-3380M CPU @ 2.90GHz, 4 cores, 11 GB BenchmarkEncodeInto_Parallel-4 206971063 23.00 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-4 206572972 23.08 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-4 206144238 23.12 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-4 201967788 23.97 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-4 201819664 24.16 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-4 199096726 24.06 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-4 104718105 46.35 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-4 102565275 45.83 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-4 104559994 46.41 ns/op 0 B/op 0 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-4 5150809 948.4 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-4 4739380 1007 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-4 5008515 1035 ns/op 1536 B/op 1 allocs/op BenchmarkCallSeal/audio100B-4 5835325 843.7 ns/op 118.53 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-4 5227850 833.9 ns/op 119.92 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-4 5202028 876.8 ns/op 114.05 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-4 266950 17921 ns/op 1115.98 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-4 270957 17892 ns/op 1117.81 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-4 263685 18082 ns/op 1106.09 MB/s 32 B/op 2 allocs/op BenchmarkSealMessage-4 156243 28515 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-4 152851 28925 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-4 166066 27881 ns/op 2000 B/op 7 allocs/op BenchmarkOpenMessage-4 155019 30212 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-4 172021 30138 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-4 161298 29974 ns/op 2000 B/op 8 allocs/op BenchmarkRecordVerify-4 25580 195508 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-4 23702 191621 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-4 25989 194988 ns/op 7240 B/op 9 allocs/op BenchmarkSealFile50MB-4 54 107855643 ns/op 486.10 MB/s 111630917 B/op 3207 allocs/op BenchmarkSealFile50MB-4 43 119741634 ns/op 437.85 MB/s 111630947 B/op 3207 allocs/op BenchmarkSealFile50MB-4 74 115753621 ns/op 452.93 MB/s 111630868 B/op 3207 allocs/op BenchmarkOpenFile50MB-4 93 50500274 ns/op 1038.19 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-4 94 50839112 ns/op 1031.27 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-4 93 50559574 ns/op 1036.97 MB/s 366384 B/op 1605 allocs/op BenchmarkFanOutMedia/members_2-4 3181144 1392 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-4 4073265 1749 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-4 3199050 1441 ns/op 1280 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-4 21497622 215.7 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-4 21068415 216.5 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-4 23209260 214.3 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-4 6056880 796.7 ns/op 1280 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-4 5988408 810.2 ns/op 1280 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-4 5997423 797.4 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-4 796494 6179 ns/op 11009 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-4 760934 6304 ns/op 11009 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-4 754526 6254 ns/op 11009 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-4 105771 46962 ns/op 82702 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-4 104446 46473 ns/op 82702 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-4 104604 46578 ns/op 82702 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-4 26011 183544 ns/op 327224 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-4 25496 186513 ns/op 327224 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-4 25755 187709 ns/op 327224 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-4 135726 36404 ns/op 38630 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-4 121446 33571 ns/op 38630 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-4 122709 34737 ns/op 38630 B/op 255 allocs/op BenchmarkFanOutGroupAudio/muted-4 46157548 98.40 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-4 51619384 98.33 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-4 52092493 96.48 ns/op 0 B/op 0 allocs/op BenchmarkGroupSend_1000Members-4 34855 128176 ns/op 6883 B/op 71 allocs/op BenchmarkGroupSend_1000Members-4 35062 129426 ns/op 6870 B/op 71 allocs/op BenchmarkGroupSend_1000Members-4 35367 126677 ns/op 6862 B/op 71 allocs/op BenchmarkRouteFrame_MediaAudio-4 18353691 259.3 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-4 19628175 267.2 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-4 19021100 280.7 ns/op 16 B/op 1 allocs/op BenchmarkSendFrame_MediaVideo-4 4540537 1068 ns/op 2080 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-4 4557955 1051 ns/op 2080 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-4 4372131 1059 ns/op 2080 B/op 2 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-4 33785077 126.0 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-4 36437270 127.9 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-4 41767636 125.6 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-4 8522686 554.8 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-4 8697949 564.6 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-4 8527893 560.2 ns/op 0 B/op 0 allocs/op BenchmarkE2EESealOpen-4 65182 72901 ns/op 4315 B/op 28 allocs/op BenchmarkE2EESealOpen-4 59730 81247 ns/op 4308 B/op 28 allocs/op BenchmarkE2EESealOpen-4 64059 73998 ns/op 4314 B/op 28 allocs/op BenchmarkSendVideoFrame_Kept-4 270717 28655 ns/op 10085 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-4 519327 26004 ns/op 10053 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-4 522255 33008 ns/op 10053 B/op 15 allocs/op BenchmarkHandleMediaFrame_Video-4 13170520 347.0 ns/op 77 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-4 11218270 433.4 ns/op 77 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-4 10886816 382.3 ns/op 77 B/op 2 allocs/op
ARM Cortex-A76 / Cortex-A55, 2026-11-02
# date: 2026-11-02T15:11Z # go: go1.27.3 linux/arm64, CGO_ENABLED=0 # benchtime: 4s, count: 3 # cpu: Cortex-A55+Cortex-A76, 8 cores, 30 GB BenchmarkEncodeInto_Parallel-8 247126206 21.40 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-8 210159356 20.26 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto_Parallel-8 222675504 18.90 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-8 146854450 32.75 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-8 145456929 33.27 ns/op 0 B/op 0 allocs/op BenchmarkDecodeIntoPooled-8 146121974 33.59 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-8 73797207 63.80 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-8 76096509 65.38 ns/op 0 B/op 0 allocs/op BenchmarkEncodeInto-8 74510823 66.06 ns/op 0 B/op 0 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-8 5231865 892.9 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-8 5263242 913.5 ns/op 1536 B/op 1 allocs/op BenchmarkEncodeDecodeMediaFramePayload_RoundTrip-8 5462005 914.3 ns/op 1536 B/op 1 allocs/op BenchmarkCallSeal/audio100B-8 9407304 501.9 ns/op 199.23 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-8 10342074 494.7 ns/op 202.14 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/audio100B-8 7117606 566.8 ns/op 176.41 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-8 371274 13286 ns/op 1505.32 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-8 375684 12925 ns/op 1547.41 MB/s 32 B/op 2 allocs/op BenchmarkCallSeal/video20KB-8 370930 13351 ns/op 1498.00 MB/s 32 B/op 2 allocs/op BenchmarkSealMessage-8 474229 8538 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-8 618742 8465 ns/op 2000 B/op 7 allocs/op BenchmarkSealMessage-8 501927 8574 ns/op 2000 B/op 7 allocs/op BenchmarkOpenMessage-8 601172 8685 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-8 533697 8342 ns/op 2000 B/op 8 allocs/op BenchmarkOpenMessage-8 601161 8909 ns/op 2000 B/op 8 allocs/op BenchmarkRecordVerify-8 15699 293366 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-8 15920 298668 ns/op 7240 B/op 9 allocs/op BenchmarkRecordVerify-8 15720 306859 ns/op 7240 B/op 9 allocs/op BenchmarkSealFile50MB-8 70 73771182 ns/op 710.69 MB/s 111631522 B/op 3207 allocs/op BenchmarkSealFile50MB-8 94 70453742 ns/op 744.16 MB/s 111631489 B/op 3207 allocs/op BenchmarkSealFile50MB-8 61 71397829 ns/op 734.32 MB/s 111631676 B/op 3207 allocs/op BenchmarkOpenFile50MB-8 100 40225469 ns/op 1303.37 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-8 100 40029559 ns/op 1309.75 MB/s 366384 B/op 1605 allocs/op BenchmarkOpenFile50MB-8 117 39212937 ns/op 1337.03 MB/s 366384 B/op 1605 allocs/op BenchmarkFanOutMedia/members_2-8 2518348 1915 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-8 2568562 1901 ns/op 1280 B/op 1 allocs/op BenchmarkFanOutMedia/members_2-8 2548766 1861 ns/op 1280 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-8 10551296 457.3 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-8 10405736 452.8 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/audio/plain-8 10440296 430.6 ns/op 128 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-8 3380622 1468 ns/op 1281 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-8 3250087 1486 ns/op 1281 B/op 1 allocs/op BenchmarkMediaIngress/video/plain-8 3334449 1470 ns/op 1281 B/op 1 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-8 361983 13200 ns/op 11011 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-8 382260 13248 ns/op 11012 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=8-8 314002 13136 ns/op 11012 B/op 8 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-8 50430 86970 ns/op 82714 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-8 56049 83763 ns/op 82713 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=64-8 56802 84330 ns/op 82713 B/op 64 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-8 14089 333794 ns/op 327268 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-8 14528 331243 ns/op 327268 B/op 255 allocs/op BenchmarkFanOutGroupVideo/subscribers=255-8 14496 325761 ns/op 327266 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-8 61407 75250 ns/op 38639 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-8 59912 76751 ns/op 38639 B/op 255 allocs/op BenchmarkFanOutGroupAudio/in_set-8 62667 75138 ns/op 38639 B/op 255 allocs/op BenchmarkFanOutGroupAudio/muted-8 37609077 127.3 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-8 37765041 126.8 ns/op 0 B/op 0 allocs/op BenchmarkFanOutGroupAudio/muted-8 38169864 126.1 ns/op 0 B/op 0 allocs/op BenchmarkGroupSend_1000Members-8 23505 213506 ns/op 7092 B/op 71 allocs/op BenchmarkGroupSend_1000Members-8 30927 211690 ns/op 6971 B/op 71 allocs/op BenchmarkGroupSend_1000Members-8 26907 173332 ns/op 7009 B/op 71 allocs/op BenchmarkRouteFrame_MediaAudio-8 15447057 352.8 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-8 12660244 382.0 ns/op 16 B/op 1 allocs/op BenchmarkRouteFrame_MediaAudio-8 15495753 359.1 ns/op 16 B/op 1 allocs/op BenchmarkSendFrame_MediaVideo-8 2618607 1875 ns/op 2080 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-8 2545294 1884 ns/op 2080 B/op 2 allocs/op BenchmarkSendFrame_MediaVideo-8 2533215 1908 ns/op 2080 B/op 2 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-8 20931678 207.7 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-8 23071693 217.6 ns/op 0 B/op 0 allocs/op BenchmarkRingBuffer_SPSC_Media/Write-8 22551352 210.3 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-8 6037053 792.7 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-8 6149212 795.0 ns/op 0 B/op 0 allocs/op BenchmarkFullPipeline_MediaForward-8 6222187 795.5 ns/op 0 B/op 0 allocs/op BenchmarkE2EESealOpen-8 161086 33803 ns/op 4519 B/op 28 allocs/op BenchmarkE2EESealOpen-8 152941 31251 ns/op 4497 B/op 28 allocs/op BenchmarkE2EESealOpen-8 142279 32036 ns/op 4484 B/op 28 allocs/op BenchmarkSendVideoFrame_Kept-8 463230 25464 ns/op 10046 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-8 546876 23926 ns/op 10050 B/op 15 allocs/op BenchmarkSendVideoFrame_Kept-8 595176 25614 ns/op 10046 B/op 15 allocs/op BenchmarkHandleMediaFrame_Video-8 12469998 368.5 ns/op 73 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-8 11498198 376.5 ns/op 73 B/op 2 allocs/op BenchmarkHandleMediaFrame_Video-8 12922048 393.2 ns/op 73 B/op 2 allocs/op
Назад на verboo.org