Facebook imatsegula kukhazikitsa matebulo a F14 hashi

Kampani ya Facebook adalengeza za kukhazikitsa gwero lotseguka la matebulo a hashi F14, wokometsedwa kuti azikumbukira bwino. F14 imagwiritsidwa ntchito muzomangamanga za Facebook ngati m'malo mwamitundu yambiri ya matebulo a hashi ndipo imatha kuchepetsa kukumbukira zinthu popanda kudzipereka. F14 imachita bwino kwambiri kuposa matebulo a google:: sparse_hash_map, omwe mpaka pano awonedwa kuti ndiwothandiza kwambiri pokumbukira kukumbukira. Khodi ya polojekiti imalembedwa mu C ++ ndipo ikuphatikizidwa mulaibulale Kupusa.

F14 imatanthawuza ma aligorivimu okhala ndi njira yolumikizirana yotengera ma hashing awiri ndi 14 mndandanda wa zitsanzo (unyolo wa mipata 14 umasungidwa mu selo limodzi la tebulo la hashi, ndipo nthawi yapakati pa maselo imawerengedwa pogwiritsa ntchito hashi yothandizira). Kuti mufulumizitse ntchito zosefera ma cell, kukhazikitsa kumagwiritsa ntchito malangizo a vector SSE2 pamakina a x86_64 ndi NEON ya Aarch64, omwe amalola kufananiza magwiridwe antchito posankha mipata yokhala ndi maunyolo ofunikira ndikusefa makiyi mkati mwa unyolo. Midawu ya 14 mipata imakonzedwa nthawi imodzi, yomwe ndi yoyenera pakati pa kugwiritsa ntchito cache ya purosesa ndi kuchuluka kwa kugunda.

Mbali yapadera ya F14 ndikutha kusankha njira zosiyanasiyana zosungira deta:

  • F14NodeMap - imagwiritsa ntchito kukumbukira pang'ono kwa makiyi akulu ndi apakatikati. Imawonetsetsa kuti zinthu zimasungidwa mosadukiza ndi kuyitanira ku malloc pakuyika kulikonse;
  • F14ValueMap - imapereka kukumbukira pang'ono kwa makiyi ang'onoang'ono. Zinthu zimasungidwa m'maselo omwe (inline). Kwa makiyi apakatikati ndi akulu, njira iyi imatsogolera pakukumbukira kowonekera;
  • F14VectorMap - imagwira ntchito mwachangu pamatebulo akulu ndi makiyi ovuta, koma pang'onopang'ono pamakiyi osavuta ndi matebulo ang'onoang'ono. Zinthuzo zimadzaza ndi anthu mosalekeza ndikuyankhidwa ndi cholozera cha 32-bit;
  • F14FastMap ndi njira yophatikizika. Ngati kiyiyo ili yochepera 24 byte, ndiye kuti F14ValueMap yasankhidwa, ndipo ngati zambiri, F14VectorMap yasankhidwa.

Facebook imatsegula kukhazikitsa matebulo a F14 hashi

Source: opennet.ru

Kuwonjezera ndemanga