Судалгааны төслийн хүрээнд
Туршилтын хувьд
Дараагийн шатанд техник хангамжийн платформын шинж чанарыг харгалзан процедур хоорондын RTL оновчлолыг тусдаа хэлхээнд шилжүүлэхээр төлөвлөж байна. Үүний дараа бид дуудлагын онцлогоос үл хамааран функц доторх кодонд хэрэглэгдэж буй процедурын дотоод оновчлолыг (IPA) зэрэгцээ болгохоор төлөвлөж байна. Одоогийн байдлаар хязгаарлах холбоос бол хог цуглуулагч бөгөөд олон урсгалтай горимд ажиллаж байх үед хог цуглуулах ажиллагааг идэвхгүй болгодог глобал түгжээг нэмсэн (ирээдүйд хог цуглуулагчийг GCC-ийн олон урсгалтай гүйцэтгэлд тохируулна).
Гүйцэтгэлийн өөрчлөлтийг үнэлэхийн тулд 100 мянга гаруй мөр код, 1700 функц агуулсан gimple-match.c файлыг цуглуулсан тестийн багцыг бэлтгэсэн. 5 физик цөмтэй, 8250 виртуал (Hyperthreading) бүхий Intel Core i4-8U CPU-тэй систем дээр хийсэн туршилтууд нь Intra Procedural GIMPLE оновчлолын гүйцэтгэлийн хугацаа 7 урсгалтай үед 4 секундээс 2 секунд, 3 урсгалтай үед 4 секунд болж буурчээ. утаснууд, өөрөөр хэлбэл. Угсралтын шатны хурдыг тус тус 1.72 ба 2.52 дахин нэмэгдүүлсэн. Туршилтууд нь Hyperthreading-тэй виртуал цөм ашиглах нь гүйцэтгэлийг нэмэгдүүлэхэд хүргэдэггүй болохыг харуулсан.
Барилга угсралтын нийт хугацааг ойролцоогоор 10% -иар бууруулсан боловч урьдчилсан мэдээгээр RTL-ийн оновчлолыг зэрэгцүүлэх нь илүү бодит үр дүнд хүрэх боломжийг олгоно, учир нь энэ үе шат эмхэтгэлд илүү их цаг зарцуулдаг. Ойролцоогоор RTL зэрэгцүүлсний дараа угсралтын нийт хугацаа 1.61 дахин багасна. Үүний дараа IPA оновчлолыг зэрэгцүүлэн хийснээр барилгын хугацааг дахин 5-10% бууруулах боломжтой болно.
Эх сурвалж: opennet.ru