Microsoft ya buɗe lambar don tsarin rarraba ƙwaƙwalwar ajiyar mimalloc

Microsoft ya buɗe ɗakin karatu a ƙarƙashin lasisin MIT mmalloc daga aiwatar da tsarin rabon ƙwaƙwalwar ajiya wanda aka ƙirƙira asali don ɓangarori na lokaci na lokaci na harsuna Koka и Lean. An daidaita Mimalloc don amfani a daidaitattun aikace-aikace ba tare da canza lambar su ba kuma yana iya aiki azaman canji na gaskiya don aikin malloc. Yana goyan bayan aiki akan Windows, macOS, Linux, BSD da sauran tsarin Unix.

Babban fasalin mimalloc shine ƙaddamarwar aiwatarwa (kasa da layukan lamba 3500) da babban aiki. IN gwaje-gwajen da aka yi mimalloc ya zarce duk dakunan karatu na rarraba ƙwaƙwalwar ajiya, gami da jemalloc, tcmalloc, snmalloc, rpmalloc и Ajiyewa.

Don kimanta aiki, saitin data kasance daidaitattun gwaje-gwaje A wasu gwaje-gwaje, mimalloc ya ninka sau da yawa fiye da sauran tsarin; misali, a cikin gwajin ƙaura tsakanin zaren daban-daban, mimalloc ya juya ya zama fiye da sau 2.5 fiye da tcmalloc da jemalloc. A lokaci guda, a mafi yawan gwaje-gwaje, ana kuma lura da ƙarancin amfani da ƙwaƙwalwar ajiya; a wasu yanayi, ana iya rage yawan ƙwaƙwalwar ajiya da kashi 25%.

Microsoft ya buɗe lambar don tsarin rarraba ƙwaƙwalwar ajiyar mimalloc

Ana samun babban aiki musamman ta hanyar amfani da sharadin jeri kyauta. Maimakon babban jeri ɗaya, mimalloc yana amfani da jerin ƙananan jeri, kowannensu yana ɗaure zuwa shafin ƙwaƙwalwar ajiya. Wannan tsarin yana rage rarrabuwa kuma yana ƙara yawan wurin bayanai a cikin ƙwaƙwalwar ajiya. Shafin žwažwalwar ajiya rukuni ne na tubalan girman girmansa. A kan tsarin 64-bit, girman shafin shine yawanci 64 KB. Idan babu bulogin da aka shagaltar da su a cikin shafin, an sake shi gaba daya kuma an mayar da ƙwaƙwalwar ajiya zuwa tsarin aiki, wanda ke rage farashin ƙwaƙwalwar ajiya da rarrabuwa a cikin shirye-shirye masu tsayi.

Ana iya haɗa ɗakin karatu a matakin haɗin kai ko loda shi don shirin da aka riga aka haɗa ("LD_PRELOAD=/usr/bin/libmimalloc.so myprogram"). Laburare kuma tana bayar da API don haɗa ayyuka cikin lokacin aiki da sarrafa ɗabi'a mai kyau, alal misali, don haɗa masu sarrafa jinkirin sakin ƙwaƙwalwar ajiya da haɓaka ƙididdigar ƙididdiga ta monotonically. Yana yiwuwa a ƙirƙira da amfani da "tuba" da yawa a cikin aikace-aikacen don rarrabawa a wurare daban-daban na ƙwaƙwalwar ajiya. Hakanan yana yiwuwa a 'yantar da tudun gaba ɗaya, ba tare da shiga ba tare da 'yantar da abubuwan da aka sanya a ciki daban ba.

Yana yiwuwa a gina ɗakin karatu a cikin yanayin tsaro, wanda aka maye gurbin shafukan duban ƙwaƙwalwar ajiya na musamman (shafukan gadi) a kan iyakokin toshe, da kuma bazuwar rarraba toshe da boye-boye na jerin tubalan da aka saki. Irin waɗannan matakan suna ba da damar toshe mafi yawan fasahohin da ake amfani da su don yin amfani da tulin tudu. Lokacin da kuka kunna Safe Mode, aikin yana raguwa da kusan 3%.

Daga cikin sifofin mimalloc, an kuma lura cewa ba shi da sauƙi ga matsaloli tare da kumburi saboda babban rarrabuwa. A cikin mafi munin yanayi, yawan ƙwaƙwalwar ajiya yana ƙaruwa da 0.2% don metadata kuma zai iya kaiwa 16.7% don ƙwaƙwalwar rarrabawa. Don guje wa rikice-rikice lokacin samun damar albarkatu, mimalloc yana amfani da ayyukan atomic kawai.

source: budenet.ru

Add a comment