اوپن زیډ ایل 0.2.0

اوپن زیډ ایل 0.2.0 اوپن زیډ ایل 0.2.0

د اوو میاشتو پراختیا وروسته، د چوکاټ 0.2.0 نسخه خپره شوه. اوپن زیډ ایل، د بې ضرره معلوماتو کمپرسورونو جوړولو لپاره ډیزاین شوی.

چوکاټ د اساس کتابتون او وسایلو څخه جوړ دی چې د ځانګړو کمپرسورونو جوړولو لپاره په ژبه کې تشریح شوي ایس ډي ډي ایل.
د یو ښه وقف شوي کمپرسور جوړولو لپاره دوه مرحلې شتون لري:

  1. د جوړښت استخراج لپاره د معلوماتو تحلیل.
  2. د ښه بیک انډ کمپرسورونو کارول چې د ښه کمپریشن ترلاسه کولو لپاره پایله لرونکي جوړښت څخه ګټه پورته کوي.

OpenZL د دواړو مرحلو لپاره وسایل چمتو کوي.

دا پروژه په C او C++ ژبو لیکل شوې او د BSD جواز لاندې ویشل شوې ده.

لوی بدلونونه

د SDDL2 معرفي کول

SDDL د خپل اصلي ډیزاین اهدافو د ترلاسه کولو لپاره له پیل څخه په بشپړه توګه بیا لیکل شوی و. پداسې حال کې چې اصلي ډیمو د چلولو ساده چاپیریال و، SDDL2 یو بشپړ کمپائلر دی: پارسر معلومات سیمانټیک تحلیل کونکي ته لیږدوي، کوم چې په پایله کې یو ټایپ شوی خلاصې ترکیب ونې (AST) اصلاح کونکي ته لیږدوي، او اصلاح کونکي د کوډ جنریټر کنټرولوي، کوم چې د مجازی ماشین بایټ کوډ تولیدوي.

کلیدي پایله یې سمدستي تحلیل دی. کله چې د ریکارډ موقعیت یوازې د پیرامیټرو او ثابتو په کارولو سره په بشپړ ډول وټاکل شي، انجن د پخوانیو بایټونو سکین کولو پرته مستقیم هر ډګر ته ټوپ کوي، د کاپي پرته لاسرسي او د څو GB/s تروپټ فعالوي.

ژبه پخپله د خپل اوزار سیټ سره یوځای وده کړې ده. دا اوس د مشروط بیاناتو، پیرامیټرائز شوي او بې نومه ریکارډونو، د ریکارډ ساحې غړو ته لاسرسی، او بټ وائز او منطقي آپریټرونو لپاره د بندونو ملاتړ کوي.

د پراختیا کونکي په اړخ کې، د سیمانټیک تحلیل مرحله اوس د تالیف په وخت کې غیر تعریف شوي حوالې، د ډول بې مطابقت، او د ارټي غلطۍ پیژني - د سرچینې کوډ موقعیت سره - د چلولو په وخت کې نه، او د .sddl فایلونو د نحو روښانه کولو لپاره د VS کوډ توسیع خپور شوی.

نوی جوړ شوی LZ کوډیک

OpenZL اوس خپل LZ کوډیک لري، چې د ZL_GRAPH_LZ په نوم یادیږي، او همدارنګه په zli افادیت کې د ترتیبي کمپریشن پروفایل. په کوډیک کار روان دی، د دې د ځانګړتیا سیټ پراخوي او د کوچني ان پټ ډیټا پروسس کولو پرمهال فعالیت ښه کوي. اوس مهال، دا د 64 KB کمپریشن کړکۍ سره د zstd کچې 1 سره مساوي فعالیت ملاتړ کوي.

OpenZL د LZ پایپ لاین هر پړاو ته اجازه ورکوي چې د سرعت لپاره بیا ډیزاین شي. د دې ګراف جوړښت د انټروپي کوډ کولو مرحلو سره یوځای کولو ته هم اجازه ورکوي، د یو واحد پایپ لاین کارولو پرځای چې د ټولو کارولو قضیو لپاره په مساوي ډول مناسب وي. بیا ډیری مرحلې په یوه واحد عملیات کې یوځای کیدی شي ترڅو د پروسس سرعت ښه کړي. دا OpenZL ته اجازه ورکوي چې د سیلیسیا کارپس کې د Z معیاري کچې 1 په پرتله 10٪ ګړندی کمپریشن او 70٪ ګړندی ډیکمپریشن ترلاسه کړي. زموږ ازموینې:

کمپرسورد فشار فشار نسبتد کمپریشن سرعتد کمپریشن سرعت
د OpenZL LZ کچه ۱2.74466 MB / s2288 MB / s
د Zstd کچه ۱ د ۶۴K کړکۍ اندازې سره2.74419 MB / s1254 MB / s
د Zstd کچه ۱2.89424 MB / s1345 MB / s

د ډیرو لویو معلوماتو لپاره ملاتړ

zli اوس د لوی ان پټ ډیټا پروسس کولو ملاتړ کوي (په اندازه کې څو ګیګابایټونه). د کمپریشن دمخه، دا ډول ډیټا اوس په اتوماتيک ډول د مدیریت وړ اندازې ټوټو کې ویشل کیږي (تقریبا 16 MB په ډیفالټ)، د حافظې کارول محدودوي، د معلوماتو ځای ښه کوي، او موازي پروسس فعالوي. SDDL2 د سکیما سره کار کولو پرمهال ورته اتوماتیک ټوټو کولو ځانګړتیا پلي کوي. په پروسه کې نوي سیګمینټرونه رامینځته شوي یا تازه شوي - د CSV، پارکیټ، او معیاري عددي ډیټا لپاره - او ټول سیګمینټرونه اوس د سریال کولو وړ او تنظیم وړ دي، نو غوره شوی ترتیب په کمپرسور کې خوندي کیدی شي او وروسته بیا کارول کیدی شي.

دا د کمپریشن په جریان کې په شفاف ډول پلي کیږي. په یاد ولرئ چې د روزنې پایپ لاین توپیر لري او غیر اغیزمن پاتې کیږي، نو دا د روزنې موادو په توګه د لوی ان پټ ډیټا منلو لپاره ډیزاین شوی نه دی.

په آنلاین ګراف ویژولائزر کې پرمختګونه (هڅه کول)
ویژولائزر اوس د پیل څخه تر پایه پورې د کمپریشن او ډیکمپریشن نښې پیژني.

د سټریم مخکتنې پینل تاسو ته اجازه درکوي چې بایټونه په حقیقت کې د هرې څنډې په اوږدو کې جریان ولري، او د کنټرولونو تراشل حتی لوی سټریمونه د کار کولو لپاره اسانه ساتي.

د ترتیباتو پینل ټول د ښودلو اختیارونه په یو ځای کې سره یوځای کوي، او د هاټ کیزونو بشپړ سیټ — سمتي نیویګیشن، ترتیب شوی ټراورسل، پراخیدل او سقوط، او د نوډ انتخاب — تاسو ته اجازه درکوي چې د موږک پرته د وسیلې سره په اسانۍ سره کار وکړئ.

ټرېسونه اوس نسخه شوي، د بلاک پر بنسټ کمپریشن په سمه توګه ښودل شوی، او zli په پای کې کولی شي د نوي --trace او --trace-streams-dir بیرغونو په کارولو سره خپل ټرېسونه تولید کړي.

Разное

  • په کتلاګ کې څو کوډیکونه اضافه شوي دي. د پارشن او بټ پیک کوډیکونه اوس یو متحد ډیکوډر کاروي. د فلوټینګ پوائنټ بټسپلیټ کوډیک اوس د fp16، fp32، fp64، او bf16 فارمیټونو لپاره وقف شوي کوډ کونکي او ډیکوډرونه د ځانګړي سرعت سره شامل دي. د رینج-پوه ویش (split_byrange)، د اوږدوالي ملټي پلیکسر، سینټینل کوډیک، یو lz4 ګراف، او کوچني مرستندویه دندې لکه tryParseInt او splitByParam اضافه شوي دي.
  • API ساده شوی دی.
  • د فز ټیسټینګ ښه شوی.
  • د نورو پلیټ فارمونو لپاره د جوړونې او بسته بندۍ پروسه ښه شوې.

سرچینه: linux.org.ru