Быстродействие

Проверка релиза 0.5.0 · 19 октября

Apple M1 · 8 GiB · macOS 27.0.1

Одинаковые файлы, один документ на новый процесс, встроенные движки. Холодный запуск — после очистки известных кешей приложения; файловый кеш ОС остаётся. Тёплый — после полного холодного прохода. Время определяется по системным кадрам от рождения процесса, до ввода. Каждая ячейка — одно наблюдение, а не статистический рейтинг. Размеры окон по умолчанию различаются.

Холодный запуск

ПриложениеРазмер · MiBLightПервая MermaidRAM · MiB
MDVu6.961.31 s1.20 s146.2
Typora44.532.19 s1.76 s347.3
Obsidian527.281.75 s1.32 s476.9
MacDown16.541.37 s1.04 s138.4
MarkViewer58.152.15 s1.40 s358.6
MD Viewer410.022.49 sN/A428.8
VS Code1388.933.56 s3.31 s1245.5
Marked145.184.03 s3.23 s314.6

Тёплый запуск

ПриложениеРазмер · MiBLightПервая MermaidRAM · MiB
MDVu6.960.78 s0.66 s143.0
Typora44.531.36 s1.39 s343.0
Obsidian527.281.45 s1.21 s417.9
MacDown16.541.64 s1.10 s201.0
MarkViewer58.152.16 s1.19 s356.1
MD Viewer410.021.83 sN/A447.8
VS Code1388.933.13 s2.51 s1272.1
Marked145.183.01 s2.94 s309.1

Для тёплого MacDown использованы окончательные ручные замеры автора: 201 MiB RAM и 1,1 с до первой диаграммы, переданные 19 октября. Исходные автоматические наблюдения сохранены в JSON; для этой поправки бенчмарк не перезапускался.

Размер — полное Universal-приложение без изменяемых профилей и системного браузерного движка. Light — одинаковый файл на 91 722 байта без диаграмм. RAM — суммарная физическая память, медиана на 7–8-й секунде: процессы приложения, потомки и все принадлежащие ему системные/XPC-службы по владельцу, указанному ОС. Контроль Mermaid содержит два узла; «Рендер · Страница» означает первую видимую диаграмму, а не готовность всего документа. N/A — вместо диаграммы показан код.

Без документа

ПриложениеRAM после стабилизации · MiBНаблюдаемый пик · MiB
MDVu100.6107.5
MacDown103.5103.5

Медиана на 30–40-й секунде. MDVu показывает системный диалог открытия; MacDown — пустой документ Untitled. Это разные стартовые состояния, а не одинаковая нагрузка пустого просмотрщика.

Complete и Heavy · RAM

Приложение / файл / фазаНа 8-й с · MiBПосле EOF · MiBПик прохода · MiB
MDVu · test-complete.md · cold166.9294.7964.8
MDVu · test-complete.md · warm195.1296.7664.4
MDVu · test-heavy.md · cold195.1710.81306.4
MDVu · test-heavy.md · warm297.7752.51102.5
MacDown · test-complete.md · cold207.3334.8375.1
MacDown · test-complete.md · warm217.9347.2388.8

После EOF — медиана через 5–10 секунд после подтверждённого достижения конца документа. Пик выборки включает проход и накладные расходы Accessibility; это диагностика, а не чистая память старта или скорость рендера. EOF не доказывает поддержку каждой дополнительной диаграммы.

MacDown Heavy: системный счётчик пика основного процесса достиг 5670.1 MiB. Через 7 мин 42 с EOF не подтверждён; тёплый проход не запускался. Это пик за время жизни основного процесса, а не пик одновременной выборки дерева процессов в таблице.

Архив 18 октября · прежний учёт RAM

Новое сравнение выше заменяет прежние наблюдения размера, старта и RAM. Старый стенд относил WebKit по времени запуска и не всегда учитывал другие XPC-службы приложения; для сравнения RAM используйте новые измерения с системной атрибуцией владельца.

Неполное сравнение: 136/192 наблюдений старта; 135/192 полных проходов.

Apple M1 · 8 GiB · macOS 27.0.1 · 18 Oct 2026

Холодный старт

ПриложениеРазмер · MiBLightПервая MermaidRAM · MiB
MDVu0.5.07.021.55 s1.57 s150 / 186
Typora1.14.1044.531.58 s2.11 s303 / 457
Obsidian1.14.4527.281.76 s1.57 s472 / 548
MacDown3000.0.716.541.29 s1.71 s103 / 141
MarkViewer1.8.1558.151.91 s1.84 s344 / 633
MD Viewer1.2.1410.022.12 sПоказан код422 / 455
VS Code1.142.01388.934.09 s3.43 s1267 / 1272
Marked3.2.21145.183.87 s3.41 s286 / 444

Тёплый старт

ПриложениеРазмер · MiBLightПервая MermaidRAM · MiB
MDVu0.5.07.021.22 s0.69 s145 / 186
Typora1.14.1044.531.75 s1.55 s298 / 455
Obsidian1.14.4527.281.55 s1.18 s473 / 548
MacDown3000.0.716.540.80 s1.36 s101 / 141
MarkViewer1.8.1558.152.16 s1.40 s347 / 605
MD Viewer1.2.1410.022.21 sПоказан код447 / 488
VS Code1.142.01388.933.00 s3.00 s1206 / 1273
Marked3.2.21145.183.65 s3.39 s276 / 406

Размер файлов Universal-приложения, симлинки учтены один раз; без системного WebKit и профилей браузера. Light — один и тот же текстовый файл, 91 722 байта, без блоков диаграмм. RAM: медиана на 8-й секунде / пик за первые 8 с. Контроль Mermaid содержит два узла; полная матрица форматов приведена отдельно.

Методика и границы сравнения

Холодные и тёплые запуски

Один Mac, один документ на новый процесс. Первое читаемое содержимое определяется по системным кадрам до любого ввода; в контроле Mermaid требуется готовая диаграмма. RAM: медиана на 8-й секунде / пик за первые 8 с, вместе со вспомогательными процессами. Перед холодным запуском очищаются кеши приложения; файловый кеш ОС остаётся. Тёплый запуск следует после полного холодного прохода. Выбрана первая валидная полная пара; повторы сохранены в исходных данных.

Подтверждено полных проходов: 135 / 192. При редких кадрах показан временной интервал. Проход проверяет конец файла, а не скорость рендера или успешность всех диаграмм. Калибровочные попытки исключены.

† Время старта и RAM за первые 8 с проверены отдельно; последующая прокрутка не подтверждена стендом. Парный холодный проход завершён. Поздний наблюдаемый пик не является памятью полного файла.

Общее содержимое · без блоков диаграмм

RAM: медиана на 8-й секунде / пик старта / пик полного прохода. Последний включает накладные расходы Accessibility и служит диагностикой, а не чистым рейтингом памяти запуска.

Приложение / файлХолодный стартRAM · MiBТёплый стартRAM · MiB
MD Viewercommon-test-light.md2.12 s422 / 455 / 5402.21 s447 / 488 / 509
MD Viewercommon-test-medium.md2.05 s370 / 399 / 4601.52 s369 / 401 / 447
MD Viewercommon-test-onescreen.md1.96 s378 / 406 / 4291.10 s337 / 422 / 422
MDVucommon-test-complete.md2.31 s168 / 209 / 7252.35 s168 / 210 / 627
MDVucommon-test-light.md1.55 s150 / 186 / 4191.22 s145 / 186 / 402
MDVucommon-test-medium.md1.13 s149 / 185 / 3720.77 s146 / 184 / 366
MDVucommon-test-onescreen.md1.22 s104 / 160 / 1600.67 s103 / 159 / 159
MacDowncommon-test-complete.mdАнализ кадров188 / 188 / 260Анализ кадров179 / 186 / 197†
MacDowncommon-test-light.md1.29 s103 / 141 / 1410.80 s101 / 141 / 141
MacDowncommon-test-medium.md1.69 s115 / 144 / 1530.89 s121 / 163 / 167
MacDowncommon-test-onescreen.mdПоказан HTML-код95 / 112 / 112Показан HTML-код94 / 113 / 113
MarkViewercommon-test-light.md1.91 s344 / 633 / 6362.16 s347 / 605 / 605
MarkViewercommon-test-medium.md1.94 s385 / 828 / 8281.90 s377 / 751 / 776
MarkViewercommon-test-onescreen.mdПоказан HTML-код303 / 580 / 580Показан HTML-код291 / 578 / 578
Markedcommon-test-light.md3.87 s286 / 444 / 4443.65 s276 / 406 / 471
Markedcommon-test-medium.md3.65 s338 / 508 / 5373.07 s336 / 459 / 496
Markedcommon-test-onescreen.md3.70 s277 / 416 / 4543.37 s281 / 414 / 434
Obsidiancommon-test-complete.md1.94 s647 / 742 / 8671.66 s583 / 666 / 804
Obsidiancommon-test-light.md1.76 s472 / 548 / 5721.55 s473 / 548 / 555
Obsidiancommon-test-medium.md1.97 s456 / 480 / 5261.22 s373 / 429 / 481
Obsidiancommon-test-onescreen.md1.49 s345 / 473 / 4731.11 s354 / 470 / 470
Typoracommon-test-complete.md2.41 s420 / 565 / 8012.57 s413 / 566 / 789
Typoracommon-test-light.md1.58 s303 / 457 / 5171.75 s298 / 455 / 509
Typoracommon-test-medium.md1.92 s327 / 518 / 5561.94 s327 / 517 / 558
Typoracommon-test-onescreen.mdПоказан HTML-код293 / 466 / 670Показан HTML-код292 / 469 / 637
VS Codecommon-test-light.md4.09 s1267 / 1272 / 13273.00 s1206 / 1273 / 1273
VS Codecommon-test-medium.md3.38 s1324 / 1349 / 13492.73 s1212 / 1244 / 1333
VS Codecommon-test-onescreen.md3.20 s1262 / 1312 / 13212.89 s1245 / 1285 / 1285
Исходные фикстуры проекта

RAM: медиана на 8-й секунде / пик старта / пик полного прохода. Последний включает накладные расходы Accessibility и служит диагностикой, а не чистым рейтингом памяти запуска.

Приложение / файлХолодный стартRAM · MiBТёплый стартRAM · MiB
MD Viewertest-light.md2.57 s443 / 476 / 5661.53 s388 / 505 / 562
MD Viewertest-medium.md2.30 s409 / 438 / 5431.76 s400 / 432 / 533
MD Viewertest-onescreen.md2.35 s386 / 414 / 5151.25 s347 / 433 / 504
MDVutest-light.md1.16 s152 / 189 / 6000.76 s162 / 203 / 420
MDVutest-medium.md1.42 s150 / 185 / 5850.92 s166 / 209 / 406
MDVutest-onescreen.md1.37 s356 / 464 / 4640.71 s113 / 181 / 181
MacDowntest-light.md3.53 s167 / 193 / 2273.17 s157 / 188 / 227
MacDowntest-medium.md8.29 s130 / 135 / 2450.94 s156 / 161 / 251
MacDowntest-onescreen.mdПоказан HTML-код94 / 109 / 121Показан HTML-код97 / 136 / 136
MarkViewertest-light.md2.37 s504 / 714 / 9022.56 s490 / 713 / 899
MarkViewertest-medium.md3.32 s646 / 848 / 11192.99 s611 / 745 / 1071
MarkViewertest-onescreen.mdПоказан HTML-код336 / 562 / 562Показан HTML-код357 / 634 / 634
Markedtest-light.md3.79 s522 / 539 / 6183.36 s580 / 612 / 612
Markedtest-medium.md4.49 s484 / 533 / 6454.03 s485 / 548 / 672
Markedtest-onescreen.md4.08 s317 / 447 / 4973.80 s318 / 424 / 482
Obsidiantest-light.md1.87 s666 / 730 / 9421.53 s683 / 758 / 974
Obsidiantest-medium.md1.87 s656 / 671 / 8561.39 s564 / 607 / 803
Obsidiantest-onescreen.md1.46 s385 / 549 / 5491.10 s397 / 535 / 553
Typoratest-light.md1.63 s542 / 566 / 6501.80 s548 / 573 / 692
Typoratest-medium.md1.68 s552 / 588 / 6902.22 s502 / 525 / 678
Typoratest-onescreen.mdПоказан HTML-код322 / 478 / 598Показан HTML-код311 / 487 / 667
VS Codetest-light.md3.56 s1446 / 1504 / 15463.67 s1544 / 1597 / 1597
VS Codetest-medium.md3.36 s1389 / 1442 / 14422.76 s1338 / 1411 / 1498
VS Codetest-onescreen.md3.67 s1295 / 1344 / 13442.81 s1300 / 1335 / 1335
Первая Mermaid · два узла

RAM: медиана на 8-й секунде / пик старта / пик полного прохода. Последний включает накладные расходы Accessibility и служит диагностикой, а не чистым рейтингом памяти запуска.

Приложение / файлХолодный стартRAM · MiBТёплый стартRAM · MiB
MD Viewerdiagram-control.mdПоказан код298 / 325 / 325Показан код269 / 321 / 321
MDVudiagram-control.md1.57 s102 / 267 / 2670.69 s80 / 117 / 117
MacDowndiagram-control.md1.71 s110 / 167 / 1671.36 s110 / 168 / 168
MarkViewerdiagram-control.md1.84 s245 / 437 / 4371.40 s244 / 441 / 441
Markeddiagram-control.md3.41 s201 / 271 / 3163.39 s201 / 271 / 316
Obsidiandiagram-control.md1.57 s238 / 294 / 2941.18 s244 / 302 / 302
Typoradiagram-control.md2.11 s223 / 335 / 3351.55 s224 / 357 / 357
VS Codediagram-control.md3.43 s1200 / 1269 / 12693.00 s1178 / 1246 / 1246
Документ с 73 примерами

RAM: медиана на 8-й секунде / пик старта / пик полного прохода. Последний включает накладные расходы Accessibility и служит диагностикой, а не чистым рейтингом памяти запуска.

Приложение / файлХолодный стартRAM · MiBТёплый стартRAM · MiB
MD Viewertest-diagrams.md2.19 s365 / 393 / 4471.22 s336 / 390 / 441
MDVutest-diagrams.md1.24 s172 / 431 / 9160.72 s153 / 204 / 415
MacDowntest-diagrams.md2.67 s157 / 183 / 2031.66 s152 / 160 / 196
MarkViewertest-diagrams.md2.51 s454 / 699 / 7972.45 s466 / 753 / 780
Markedtest-diagrams.md4.04 s493 / 523 / 5555.35 s421 / 549 / 561
Obsidiantest-diagrams.md1.73 s527 / 554 / 9191.32 s547 / 583 / 929
Typoratest-diagrams.md1.38 s412 / 593 / 8101.33 s427 / 606 / 765
VS Codetest-diagrams.md3.33 s1395 / 1452 / 15082.74 s1384 / 1434 / 1472

Форматы диаграмм

Одни и те же 73 примера в холодном и тёплом проходах. Встроенные движки, без дополнительных плагинов. Засчитывается нарисованная диаграмма; код и ошибки — отдельно. Каталог содержит поддерживаемые MDVu входные форматы, а не все уникальные возможности других приложений.

ПриложениеОтрисованоОшибкаКод
MDVu0.5.07300
Typora1.14.10291133
Obsidian1.14.4281233
MacDown3000.0.7261433
MarkViewer1.8.15291133
MD Viewer1.2.10073
VS Code1.142.038233
Marked3.2.2137333
Все 73 примера диаграмм

Одинаковые валидные исходники, встроенные движки. Ошибки и исходный код не считаются диаграммами. Каталог охватывает входные форматы MDVu, а не все уникальные возможности других приложений.

IDФорматMDVuTyporaObsidianMacDownMarkViewerMD ViewerVS CodeMarked
D001Mermaid / flowchartДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D002Mermaid / C4ContextДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D003Mermaid / requirementDiagramДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D004Mermaid / quadrantChartДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D005Mermaid / C4ContainerДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D006Mermaid / C4ComponentДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D007Mermaid / architecture-betaДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D008Mermaid / erDiagramДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D009Mermaid / sankeyДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D010Mermaid / sequenceDiagramДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D011Mermaid / stateDiagram-v2ДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D012Mermaid / ishikawa-betaДиаграммаДиаграммаДиаграммаОшибкаДиаграммаКодДиаграммаДиаграмма
D013Mermaid / C4DynamicДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D014Mermaid / zenumlДиаграммаДиаграммаОшибкаОшибкаОшибкаКодДиаграммаОшибка
D015Mermaid / swimlane-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D016Mermaid / C4DeploymentДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D017Mermaid / ganttДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D018Mermaid / gitGraphДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D020Mermaid / xychartДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D021Mermaid / radar-betaДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D022Mermaid / timelineДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D023Mermaid / kanbanДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D024Mermaid / mindmapДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D025Mermaid / treemap-betaДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D027Mermaid / classDiagramДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D028Mermaid / journeyДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D029Mermaid / pieДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D030Mermaid / block-betaДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D031Mermaid / packetДиаграммаДиаграммаДиаграммаДиаграммаДиаграммаКодДиаграммаДиаграмма
D032Mermaid / eventmodelingДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D033Mermaid / treeView-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D034Mermaid / venn-betaДиаграммаДиаграммаДиаграммаОшибкаДиаграммаКодДиаграммаДиаграмма
D035Mermaid / wardley-betaДиаграммаОшибкаОшибкаОшибкаДиаграммаКодДиаграммаДиаграмма
D036Mermaid / cynefin-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D038PlantUML / Sequence DiagramДиаграммаКодКодКодКодКодКодКод
D039PlantUML / Use Case DiagramДиаграммаКодКодКодКодКодКодКод
D040PlantUML / Class DiagramДиаграммаКодКодКодКодКодКодКод
D041PlantUML / Object DiagramДиаграммаКодКодКодКодКодКодКод
D042PlantUML / Activity Diagram — Current SyntaxДиаграммаКодКодКодКодКодКодКод
D043PlantUML / Activity Diagram — Legacy Syntax ProbeДиаграммаКодКодКодКодКодКодКод
D044PlantUML / Component DiagramДиаграммаКодКодКодКодКодКодКод
D045PlantUML / Deployment DiagramДиаграммаКодКодКодКодКодКодКод
D046PlantUML / State DiagramДиаграммаКодКодКодКодКодКодКод
D047PlantUML / Timing DiagramДиаграммаКодКодКодКодКодКодКод
D048PlantUML / JSON DataДиаграммаКодКодКодКодКодКодКод
D049PlantUML / YAML DataДиаграммаКодКодКодКодКодКодКод
D050PlantUML / EBNF DiagramДиаграммаКодКодКодКодКодКодКод
D051PlantUML / Regex DiagramДиаграммаКодКодКодКодКодКодКод
D052PlantUML / Network Diagram (nwdiag)ДиаграммаКодКодКодКодКодКодКод
D053PlantUML / Salt WireframeДиаграммаКодКодКодКодКодКодКод
D054PlantUML / ArchiMate DiagramДиаграммаКодКодКодКодКодКодКод
D055PlantUML / SDL ShapesДиаграммаКодКодКодКодКодКодКод
D057PlantUML / Gantt DiagramДиаграммаКодКодКодКодКодКодКод
D059PlantUML / MindMap DiagramДиаграммаКодКодКодКодКодКодКод
D060PlantUML / WBS DiagramДиаграммаКодКодКодКодКодКодКод
D063PlantUML / Information Engineering DiagramДиаграммаКодКодКодКодКодКодКод
D065PlantUML / Chart DiagramДиаграммаКодКодКодКодКодКодКод
D075Mermaid / usecase-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодОшибкаОшибка
D076Mermaid / agentflow-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодОшибкаОшибка
D077Mermaid / railroad-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D078Mermaid / railroad-ebnf-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D079Mermaid / railroad-abnf-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D080Mermaid / railroad-peg-betaДиаграммаОшибкаОшибкаОшибкаОшибкаКодДиаграммаДиаграмма
D090PlantUML / DOTДиаграммаКодКодКодКодКодКодКод
D091PlantUML / PACKETДиаграммаКодКодКодКодКодКодКод
D100PlantUML / C4-PlantUML / ContextДиаграммаКодКодКодКодКодКодКод
D101PlantUML / C4-PlantUML / LandscapeДиаграммаКодКодКодКодКодКодКод
D102PlantUML / C4-PlantUML / ContainerДиаграммаКодКодКодКодКодКодКод
D103PlantUML / C4-PlantUML / ComponentДиаграммаКодКодКодКодКодКодКод
D104PlantUML / C4-PlantUML / DynamicДиаграммаКодКодКодКодКодКодКод
D105PlantUML / C4-PlantUML / DeploymentДиаграммаКодКодКодКодКодКодКод
D106PlantUML / C4-PlantUML / SequenceДиаграммаКодКодКодКодКодКодКод
D110PlantUML / ArchiMate / business, application and technology layersДиаграммаКодКодКодКодКодКодКод