Facebook-ի հիշողության կառավարման նոր մեթոդ

Սոցցանցի զարգացման թիմի անդամներից մեկը facebook, Ռոման Գուշչին, մշակողների փոստային ցուցակում առաջարկվել է մի շարք Linux միջուկի patchesուղղված է հիշողության կառավարման բարելավմանը հիշողության կառավարման նոր կարգավորիչի ներդրման միջոցով. սալաքար (սալաքարային հիշողության կարգավորիչ).

սալերի բաշխում հիշողության կառավարման մեխանիզմ է, որը նախատեսված է հիշողությունն ավելի արդյունավետ տեղաբաշխելու և զգալի մասնատումը վերացնելու համար: Այս ալգորիթմի հիմքն այն է, որ պահպանվի հատկացված հիշողությունը, որը պարունակում է որոշակի տեսակի օբյեկտ և վերօգտագործել այդ հիշողությունը հաջորդ անգամ, երբ այն հատկացվի նույն տեսակի օբյեկտին: Այս տեխնիկան առաջին անգամ ներդրվել է SunOS-ում Ջեֆ Բոնվիքի կողմից և այժմ լայնորեն օգտագործվում է բազմաթիվ Unix օպերացիոն համակարգերի միջուկներում, այդ թվում՝ FreeBSD-ի և Linux-ի:

Նոր կարգավորիչը հիմնված է սալերի հաշվառումը հիշողության էջի մակարդակից միջուկի օբյեկտի մակարդակ տեղափոխելու վրա, ինչը հնարավորություն է տալիս մեկ սալաքարի էջը կիսել տարբեր cխմբերում՝ յուրաքանչյուր cgroup-ի համար առանձին քեշ հատկացնելու փոխարեն:

Թեստի արդյունքների հիման վրա հետևում է, որ հիշողության կառավարման առաջարկվող մեթոդը թույլ է տալիս ավելացնել արդյունավետությունը օգտագործելով սալաքար Ինչպես 45%, և նաև կնվազեցնի OS միջուկի ընդհանուր հիշողության սպառումը: Բացի այդ, նվազեցնելով սալաքարին հատկացված էջերի քանակը, կրճատվում է հիշողության մասնատումը որպես ամբողջություն, ինչը չի կարող չազդել համակարգի աշխատանքի վրա:

Նոր կարգավորիչը մի քանի ամիս փորձարկվել է արտադրական Facebook սերվերների վրա, և մինչ այժմ այս թեստավորումը կարելի է անվանել հաջողված. սերվերներ մինչև 1 ԳԲ: Այս թիվը բավականին սուբյեկտիվ է, օրինակ, ավելի վաղ թեստերը ցույց են տվել մի փոքր ավելի ցածր արդյունքներ.

  • 650-700 ՄԲ վեբ ճակատում
  • 750-800 ՄԲ սերվերի վրա տվյալների բազայի քեշով
  • 700 ՄԲ DNS սերվերի վրա

>>> Հեղինակային էջ GitHub-ում


>>> Թեստի վաղ արդյունքները

Source: linux.org.ru

Добавить комментарий