Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ

MIT-ийн инженерүүдийн баг өгөгдөлтэй илүү үр дүнтэй ажиллахын тулд объект хандалтат санах ойн шатлалыг боловсруулсан. Энэ нийтлэлд бид үүнийг хэрхэн зохион байгуулж байгааг ойлгох болно.

Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ
/ PxЭнд /ПД

Таны мэдэж байгаагаар орчин үеийн CPU-ийн гүйцэтгэлийн өсөлт нь санах ойд хандах үед хоцрогдолтой холбоотой бууралт дагалддаггүй. Жилээс жилд үзүүлэлтүүдийн өөрчлөлтийн зөрүү 10 дахин хүрч болно (PDF, 3-р хуудас). Үүний үр дүнд боломжит нөөцийг бүрэн ашиглахыг зөвшөөрдөггүй, мэдээллийн боловсруулалтыг удаашруулдаг түгжрэл үүсдэг.

Гүйцэтгэлийн шийтгэл нь задрах саатал гэж нэрлэгддэг. Зарим тохиолдолд бэлтгэлийн өгөгдлийн задрал нь процессорын 64 циклийг авч болно.

Харьцуулбал: хөвөгч цэгийн тоог нэмэх, үржүүлэх эзэлнэ араваас илүүгүй мөчлөг. Асуудал нь санах ой нь тогтмол хэмжээтэй өгөгдлийн блокуудтай ажилладаг бол програмууд нь өөр өөр төрлийн өгөгдөл агуулсан, бие биенээсээ ялгаатай хэмжээтэй объектуудтай ажилладаг. Асуудлыг шийдэхийн тулд MIT инженерүүд өгөгдөл боловсруулалтыг оновчтой болгодог объект хандалтат санах ойн шатлалыг боловсруулсан.

Технологи хэрхэн ажилладаг

Энэхүү шийдэл нь Hotpad, Zippad, COCO шахалтын алгоритм гэсэн гурван технологи дээр суурилдаг.

Hotpad нь scratchpad бүртгэлийн санах ойн програм хангамжийн шатлал юм (зурах самбар). Эдгээр регистрүүдийг дэвсгэр (pads) гэж нэрлэдэг бөгөөд тэдгээрийн гурав нь L1-ээс L3 хүртэл байдаг. Тэд өөр өөр хэмжээтэй объект, мета өгөгдөл, заагчийн массивыг хадгалдаг.

Үндсэндээ архитектур нь кэшийн систем боловч объектуудтай ажиллахад хурцадмал байдаг. Объект байрлах дэвсгэрийн түвшин нь түүнийг хэр олон удаа ашиглахаас хамаарна. Түвшингийн аль нэг нь "халих" тохиолдолд систем нь Java эсвэл Go дахь "хог цуглуулагчид"-тай төстэй механизмыг ажиллуулдаг. Энэ нь аль объектыг бусдаас бага ашигладаг болохыг шинжилж, автоматаар түвшний хооронд шилжүүлдэг.

Zippads нь Hotpad дээр суурилан ажилладаг - энэ нь шатлалын сүүлийн хоёр түвшний L3 дэвсгэр болон үндсэн санах ойд орж эсвэл гарах өгөгдлийг архивлаж, задалдаг. Эхний болон хоёр дахь дэвсгэрт өгөгдөл өөрчлөгдөөгүй хадгалагдана.

Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ

Zippad нь 128 байт хүртэлх объектуудыг шахдаг. Том объектуудыг хэсэг болгон хувааж, дараа нь санах ойн янз бүрийн хэсэгт байрлуулна. Хөгжүүлэгчдийн бичсэнээр энэ арга нь үр дүнтэй ашигласан санах ойн коэффициентийг нэмэгдүүлдэг.

Объектуудыг шахахын тулд COCO (Cross-Object Compression) алгоритмыг ашигладаг бөгөөд систем нь түүнтэй ажиллах боломжтой боловч бид үүнийг дараа хэлэлцэх болно. Суурь-Дельта-Шууд буюу FPC. COCO алгоритм нь дифференциал шахалтын хувилбар юм (дифференциал шахалт). Энэ нь объектуудыг "суурь"-тай харьцуулж, давхардсан битүүдийг устгадаг - доорх диаграмыг харна уу:

Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ

MIT инженерүүдийн үзэж байгаагаар тэдний объект хандалтат санах ойн шатлал нь сонгодог арга барилаас 17%-иар хурдан байдаг. Энэ нь орчин үеийн хэрэглээний архитектурт бүтцийн хувьд илүү ойр байдаг тул шинэ арга нь боломжит юм.

Юуны өмнө том өгөгдөл, машин сургалтын алгоритмтай ажилладаг компаниуд уг технологийг ашиглаж эхлэх төлөвтэй байна. Өөр нэг боломжит чиглэл бол үүлэн платформууд юм. IaaS үйлчилгээ үзүүлэгчид виртуалчлал, хадгалах систем, тооцоолох нөөцтэй илүү үр дүнтэй ажиллах боломжтой болно.

Манай нэмэлт нөөц, нөөц:

Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ "Бид IaaS-ийг хэрхэн бүтээдэг вэ": 1cloud-ийн ажлын талаархи материалууд

Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ Үүлний архитектурын хувьсал 1cloud
Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ 1Cloud дахь объект хадгалах үйлчилгээ

Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ HTTPS дээрх болзошгүй халдлага ба түүнээс хэрхэн хамгаалах вэ
Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ Тасралтгүй хүргэлт ба тасралтгүй интеграцийн аргуудын ижил төстэй болон ялгаатай талууд юу вэ?
Объект хандалтат санах ойн архитектурт шахалт хэрхэн ажилладаг вэ Интернет дэх серверийг хэрхэн хамгаалах вэ: 1Cloud туршлага

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх