ለሊኑክስ ከርነል የ memchr ተግባር ትግበራ ቀርቦ ነበር፣ እስከ 4 ጊዜ በፍጥነት ይሰራል

በድርድር ውስጥ ምልክትን ለመፈለግ የሚያገለግል የሜምችር() ተግባር የተመቻቸ አተገባበር ያላቸው የፕላቶች ስብስብ በሊኑክስ ከርነል ውስጥ እንዲካተት ቀርቧል። የባይት ባይት ንጽጽርን ከተጠቀመው ከአሮጌው ስሪት በተለየ፣ የታቀደው ትግበራ የ64- እና 32-ቢት ሲፒዩ መመዝገቢያዎችን ሙሉ አጠቃቀም ግምት ውስጥ በማስገባት የተገነባ ነው። በባይት ምትክ ንጽጽሩ የሚከናወነው በማሽን ቃላት በመጠቀም ነው, ይህም ቢያንስ 4 ባይት በአንድ ጊዜ ለማነፃፀር ያስችላል.

በትላልቅ ገመዶች ሲፈልጉ አዲሱ አማራጭ ከአሮጌው 4 ጊዜ ያህል ፈጣን ሆኗል (ለምሳሌ ለ1000 ቁምፊዎች ሕብረቁምፊዎች)። ለአነስተኛ ሕብረቁምፊዎች የአዲሱ አተገባበር ቅልጥፍና ያን ያህል አስፈላጊ አይደለም, ነገር ግን ከመጀመሪያው ስሪት ጋር ሲነጻጸር አሁንም ከፍ ያለ ነው. በሊኑክስ ከርነል ውስጥ፣ በ memchr() ውስጥ የሚሰሩ የሕብረቁምፊዎች መጠን 512 ባይት ይደርሳል። ለ 512 ባይት ሕብረቁምፊዎች የአፈፃፀም ትርፍ ፣ የተፈለገው ገጸ-ባህሪ በሕብረቁምፊው መጨረሻ ላይ ባለበት ሁኔታ 20% ነው።

5.18 ከርነልን በአዲሱ "memchr()" ለ32-ቢት እና 64-ቢት አርክቴክቸር መሞከር ምንም አይነት ችግር አላሳየም። የተመቻቸውን የ"memchr()" ስሪት ሲጠቀሙ የከርነል ንዑስ ስርዓቶች አጠቃላይ አፈፃፀም ገና አልተገመገመም ወይም አፈፃፀሙን የመተካት አዋጭነት አልተተነተነም (በከርነል ኮድ ውስጥ ወደ memchr() ተግባር ጥሪ 129 ጊዜ ደርሷል። በአሽከርካሪዎች እና በፋይል ስርዓቶች ኮድ ውስጥ ጨምሮ).

ምንጭ: opennet.ru

አስተያየት ያክሉ