ફેસબુક લ patક્સમાં સ્લેબ મેમરી કંટ્રોલરને સુધારે તેવા પેચો પ્રકાશિત કરે છે

રોમન ગુશ્ચીન (એક ફેસબુક સોફ્ટવેર એન્જિનિયર) રજિસ્ટ્રી લિનક્સ કર્નલ વિકાસ સૂચિમાં, સ્લેબ નિયંત્રક મેમરી મેપિંગ એપ્લિકેશન માટેના પેચોનો સમૂહ (મેમરી નિયંત્રક).

નવું નિયંત્રક નોંધપાત્ર છે સ્લેબ એકાઉન્ટિંગને મેમરી પૃષ્ઠ સ્તરથી કર્નલ objectબ્જેક્ટ સ્તર પર ખસેડીને, જે દરેક જૂથ સી માટે અલગ સ્લેબ કેશ ફાળવવાને બદલે, જુદા જુદા જૂથોમાં સ્લેબ પૃષ્ઠોને શેર કરવાનું શક્ય બનાવે છે.

રોમનને તે હાલના સ્લેબ મેમરી કંટ્રોલરમાં "ખૂબ જ ગંભીર દોષ" કહે છે કે જે આ દિવસોમાં cgroups સાથે ઓછા ઉપયોગ તરફ દોરી જાય છે.

“હાલની રચના કેમ ઓછી સ્લેબના ઉપયોગ તરફ દોરી જાય છે તે વાસ્તવિક કારણ સરળ છે: સ્લેબ પૃષ્ઠોનો ઉપયોગ ફક્ત મેમરી પૂલ દ્વારા કરવામાં આવે છે.

જો ત્યાં કોઈ અમુક ચોક્કસ કદની ફાળવણીઓ છે જ્યારે ક્રેગ ગ્રુપ દ્વારા બનાવવામાં આવે છે, અથવા જો ત્યાં કેટલાક સક્રિય areબ્જેક્ટ્સ બાકી છે સીગ્રુપ દૂર થયા પછી, અથવા સીગ્રુપમાં એક થ્રેડેડ એપ્લિકેશન છે જે ભાગ્યે જ કોઈ કર્નલ objectsબ્જેક્ટ્સ ફાળવે છે, પરંતુ દરેક વખતે નવું સીપીયુ: આ બધા કેસોમાં, પરિણામી સ્લેબનો ઉપયોગ ખૂબ ઓછો છે.

જો kmem એકાઉન્ટિંગ અક્ષમ કરેલું છે, તો કર્નલ અન્ય ફાળવણી માટે સ્લેબ પૃષ્ઠો પર ખાલી જગ્યાનો ઉપયોગ કરી શકે છે. «

સૂચિત સ્લેબ મેમરી નિયંત્રક પાછલા વર્ષમાં રોમનો ગુશિન દ્વારા ખૂબ આશાસ્પદ હતી કાર્યક્ષમતા વધે છે સ્લેબના ઉપયોગની, વપરાયેલી મેમરીનું કદ ઘટાડવું 30-45% દ્વારા સ્લેબ માટે અને કુલ કર્નલ મેમરી વપરાશમાં નોંધપાત્ર ઘટાડો.

ઉપરાંત, પેચો અમલીકરણ સૂચવ્યા છે ફેસબુક પહેલાથી જ તેમના સર્વર્સ પર ઉત્પાદનમાં કોડનો ઉપયોગ કરી રહ્યું છે અને હતું ફ્રન્ટ-એન્ડ વેબ સર્વર્સ માટે 650 700-XNUMXMB + ની બચત કરી રહ્યા છીએ, અન્ય એવોર્ડ્સમાં ડેટાબેઝ કેશીંગ અને DNS સર્વર્સ.

નોન-મોબાઇલ સ્લેબની સંખ્યા ઘટાડીને, મેમરી ફ્રેગમેન્ટેશન ઘટાડવાના ક્ષેત્રમાં પણ સકારાત્મક અસર જોવા મળે છે. નવું મેમરી નિયંત્રક એકાઉન્ટિંગ સ્લેબ માટે કોડને નોંધપાત્ર રીતે સરળ બનાવે છે અને દરેક જૂથ સી માટે ગતિશીલ નિર્માણ અને સ્લેબ કેશને કાtionવા માટે જટિલ ગાણિતીક નિયમોની જરૂર નથી.

નવા અમલીકરણમાં મેમરી માટેનાં બધાં જૂથો સ્લેબ કેશનો સામાન્ય સમૂહનો ઉપયોગ કરે છે, અને સ્લેબ કેશ્સની આયુષ્ય cgroup દ્વારા સ્થાપિત મેમરી અવરોધોની આયુષ્યથી બંધાયેલ નથી.

નવા સ્લેબ કંટ્રોલરમાં લાગુ વધુ સચોટ સંસાધન એકાઉન્ટિંગમાં સૈદ્ધાંતિક રીતે સીપીયુ વધુ લોડ થવું જોઈએ, પરંતુ વ્યવહારમાં તફાવતો નજીવા યોગ્ય બન્યા.

ખાસ કરીને નવા સ્લેબ ડ્રાઇવરનો ઉપયોગ ફેસબુક સર્વરો પર ઘણા મહિનાઓથી કરવામાં આવે છે ઓપરેશનમાં જે વિવિધ પ્રકારનાં લોડને હેન્ડલ કરે છે, અને હજી સુધી કોઈ નોંધપાત્ર પ્રેગ્રેશન શોધી શકાયું નથી.

પેચમાં કેટલાક અર્ધ-સ્વતંત્ર ભાગો હોય છે, જે સ્લેબના મેમરી નિયંત્રકની બહારનો ઉપયોગ પણ શોધી શકે છે:

  • પેટાપૃષ્ઠ લોડ એપીઆઈ, જેનો ઉપયોગ ભવિષ્યમાં પૃષ્ઠના કદ નહીં હોય તેવા અન્ય countબ્જેક્ટ્સની ગણતરી માટે કરી શકાય છે, ઉદાહરણ તરીકે પેર્કપુ ફાળવણી
  • મેમ_કગ્રુપ_પ્ટર એપીઆઈ, જ્યાં પોઇન્ટર્સને મેમકેજીમાં ગણવામાં આવે છે, તેનો ઉપયોગ અન્ય objectsબ્જેક્ટ્સ, જેમ કે પેજકેશની અસરકારક રીતે કરવા માટે કરી શકાય છે.

તે જ સમયે, મેમરી વપરાશમાં નોંધપાત્ર ઘટાડો થયો છે- કેટલાક હોસ્ટ્સ પર 1 જીબી મેમરી સુધી બચાવવાનું શક્ય હતું, પરંતુ આ સૂચક મોટાભાગે લોડની પ્રકૃતિ પર આધાર રાખે છે, રેમનું કુલ કદ, સીપીયુનું પ્રમાણ અને મેમરી સાથે કામ કરવાની લાક્ષણિકતાઓ.

દરેક મેમરી ક્રેગ માટે kmem_cache નો અલગ સેટ બનાવવાની જગ્યાએ, બે વૈશ્વિક સમૂહનો ઉપયોગ કરવામાં આવે છે: બિનહિસાબી માટે રુટ સમૂહ અને રુટ જૂથ cgroup સોંપણીઓ અને બીજા બધા સોંપણીઓ માટે બીજો સમૂહ. આ વ્યક્તિગત kmem_cache ના આજીવન સંચાલનને સરળ બનાવવા દે છે.

અંતે, જો તમને 19 પેચોનો નવો સેટ જાણવામાં રસ હોય તો તે સૂચિમાં મળી શકે છે કર્નલ મેઇલ.


ટિપ્પણી કરવા માટે સૌ પ્રથમ બનો

તમારી ટિપ્પણી મૂકો

તમારું ઇમેઇલ સરનામું પ્રકાશિત કરવામાં આવશે નહીં. આવશ્યક ક્ષેત્રો સાથે ચિહ્નિત થયેલ છે *

*

*

  1. ડેટા માટે જવાબદાર: મિગ્યુએલ gelંજેલ ગેટóન
  2. ડેટાનો હેતુ: નિયંત્રણ સ્પામ, ટિપ્પણી સંચાલન.
  3. કાયદો: તમારી સંમતિ
  4. ડેટાની વાતચીત: કાયદાકીય જવાબદારી સિવાય ડેટા તૃતીય પક્ષને આપવામાં આવશે નહીં.
  5. ડેટા સ્ટોરેજ: cસેન્ટસ નેટવર્ક્સ (ઇયુ) દ્વારા હોસ્ટ કરેલો ડેટાબેઝ
  6. અધિકાર: કોઈપણ સમયે તમે તમારી માહિતીને મર્યાદિત, પુન recoverપ્રાપ્ત અને કા deleteી શકો છો.