精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>電子資料>binary_log用于C++的快速二進制記錄器

binary_log用于C++的快速二進制記錄器

2022-06-16 | zip | 0.45 MB | 次下載 | 2積分

資料介紹

授權協議 MIT
開發語言 C/C++
操作系統 跨平臺
軟件類型 開源軟件

軟件簡介

binary_log 是一個用于 C++ 的快速二進制記錄器。

Highlights

  • 以緊湊的二進制格式記錄消息
  • 快速地
    • 每秒數億條日志
    • 基本數據類型的平均延遲為2-7 ns
    • 查看基準
  • 提供解包器來壓縮日志消息
  • 使用?fmtlib?格式化日志
  • 同步日志記錄 - 不是線程安全的
  • Header-only library
    • 此處提供單個頭文件版本
  • 需要 C++20

Usage and Performance

以下代碼將 10 億個整數記錄到文件中。

#include <binary_log/binary_log.hpp>

int main()
{
  binary_log::binary_log log("log.out");

  for (int i = 0; i < 1E9; ++i)
    BINARY_LOG(log, "Hello logger, msg number: {}", i);
}

在一個現代工作站桌面上,上述代碼的執行時間為~3.5秒。

Type Value
Time Taken 3.5 s
Throughput 1.4 Gb/s
Performance 286 million logs/s
Average Latency 3.5 ns
File Size ~5 GB
foo@bar:~/dev/binary_log$ time ./build/examples/billion_integers/billion_integers

real    0m3.561s
user    0m2.422s
sys     0m1.141s

foo@bar:~/dev/binary_log$ ls -lart log.out*
-rw-r--r-- 1 pranav pranav          6 Dec  6 07:52 log.out.runlength
-rw-r--r-- 1 pranav pranav         32 Dec  6 07:52 log.out.index
-rw-r--r-- 1 pranav pranav 4999934337 Dec  6 07:52 log.out

設計目標和決策

  • 實現單線程同步記錄器 - 不提供線程安全
    • 如果用戶想要多線程行為,用戶可以選擇并實現自己的排隊解決方案
    • 有許多眾所周知的無鎖隊列可用于此目的(moody::concurrentqueueatomic_queue等)——讓用戶選擇他們想要使用的技術。
    • 進入無鎖隊列的延遲足夠大
      • 不關心多線程場景的用戶不應該為此付出代價
      • 查看atomic_queue benchmarks,在許多最先進的多生產者、多消費者隊列中發送和接收 4 字節整數(在 2 個線程之間,使用 2 個隊列)的平均往返延遲約為150-250 納秒。
  • 避免多次寫入靜態信息
    • 靜態信息示例:格式字符串、格式參數的數量以及每個格式參數的類型
    • 將靜態信息存儲在“索引”文件中
    • 將動態信息存儲在日志文件中(盡可能參考索引文件)
  • 在運行時 hot path?中做盡可能少的工作
    • 沒有任何形式的格式
    • 所有格式化都將使用解壓縮二進制日志的解包器脫機進行

運作方式

binary_log?將日志拆分為三個文件:

poYBAGKoB-iAGCmwAAMO3JWjGCw169.png

?

下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數據手冊
  2. 1.06 MB  |  532次下載  |  免費
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費
  5. 3TC358743XBG評估板參考手冊
  6. 1.36 MB  |  330次下載  |  免費
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費
  9. 5元宇宙深度解析—未來的未來-風口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費
  11. 6迪文DGUS開發指南
  12. 31.67 MB  |  194次下載  |  免費
  13. 7元宇宙底層硬件系列報告
  14. 13.42 MB  |  182次下載  |  免費
  15. 8FP5207XR-G1中文應用手冊
  16. 1.09 MB  |  178次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21549次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537798次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191187次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183279次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費