મોલ્ડ 1.1 પહેલેથી જ રિલીઝ થઈ ચૂક્યું છે, જાણો GNU ગોલ્ડ અને LLVM કરતાં ચડિયાતા આ આધુનિક લિંકરના સમાચાર

કેટલાક દિવસો પહેલા આધુનિક લિંકર મોલ્ડ 1.1 ના નવા સંસ્કરણના પ્રકાશનની જાહેરાત કરવામાં આવી હતી, જેનો ઉપયોગ Linux સિસ્ટમો પર GNU લિંકર માટે ઝડપી પારદર્શક રિપ્લેસમેન્ટ તરીકે થઈ શકે છે.

મોલ્ડના આ નવા સંસ્કરણમાં 1.1 એ એક સંસ્કરણ છે જે નવી સુવિધાઓ, બગ ફિક્સેસ અને પ્રદર્શન સુધારણા સમાવે છે.

મોલ્ડ વિશે

ઘાટ GNU લિંકરની તમામ સુવિધાઓને સપોર્ટ કરે છે અને તેનું પ્રદર્શન ખૂબ જ ઊંચું છે, કારણ કે તે બનાવેલી લિંક્સ સીપી યુટિલિટી સાથે ફાઈલોની નકલ કરવા કરતાં માત્ર બમણી ઝડપી છે.

આ રીતે સંકલન સમય ઘટાડવાથી મોટા પ્રોજેક્ટ્સ વિકસાવવાની સુવિધામાં નોંધપાત્ર સુધારો થાય છે એક્ઝેક્યુટેબલ જનરેશન પ્રક્રિયામાં રાહ જોવાનો સમય ઘટાડીને જ્યારે ડીબગીંગ અને પરીક્ષણ ફેરફારો.

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

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

ઉદાહરણ તરીકે, મોલ્ડ એકસાથે સઘન ગણતરીઓ કરવા માટે એક તકનીકનો અમલ કરે છે ફાઇલ કૉપિ કરીને, ઑબ્જેક્ટ ફાઇલોને મેમરીમાં સક્રિયપણે લોડ કરીને, અક્ષરોને ઉકેલતી વખતે ઝડપી હેશ કોષ્ટકોનો ઉપયોગ કરીને, એક અલગ સ્ટ્રીમમાં પુનઃસ્થાપન કોષ્ટકોને સ્કેન કરી રહ્યાં છે અને વિભાગોને ડુપ્લિકેટ કરી રહ્યાં છે જે વિવિધ ફાઈલોમાં પુનરાવર્તિત થાય છે.

મોલ્ડની મુખ્ય નવીનતાઓ 1.1

મોલ્ડ 1.1 ના આ નવા સંસ્કરણમાં જે રજૂ કરવામાં આવ્યું છે, તે પ્રકાશિત કરવામાં આવ્યું છે કે લિંક સ્ટેજ ઓપ્ટિમાઇઝેશન માટે આધાર (LTO, લિંક ટાઇમ ઓપ્ટિમાઇઝેશન).

LTO ઑપ્ટિમાઇઝેશન બિલ્ડ પ્રક્રિયામાં સામેલ તમામ ફાઇલોની સ્થિતિને ધ્યાનમાં રાખીને અલગ પડે છે, જ્યારે પરંપરાગત ઑપ્ટિમાઇઝેશન મોડ્સ દરેક ફાઇલને વ્યક્તિગત રીતે ઑપ્ટિમાઇઝ કરે છે અને અન્ય ફાઇલોમાં વ્યાખ્યાયિત કૉલિંગ ફંક્શન્સની શરતોને ધ્યાનમાં લેતા નથી.

પહેલાં, જ્યારે GCC અથવા LLVM ઇન્ટરમીડિયેટ કોડ (IR) ફાઇલો સામે આવતી હતી, ત્યારે યોગ્ય ld.bfd અથવા ld.lld લિંકર્સનો ઉપયોગ કરવામાં આવતો હતો, પરંતુ હવે મોલ્ડ IR ફાઇલોને તેની જાતે જ હેન્ડલ કરે છે અને Linker પ્લગઇન API નો ઉપયોગ કરે છે, જેનો GNU ld માં પણ ઉપયોગ થાય છે. GNU ગોલ્ડ લિંકર્સ. જ્યારે LTO સક્ષમ હોય ત્યારે સ્પીડ અન્ય લિંકર્સ કરતાં થોડી વધુ ઝડપી હોય છે, કારણ કે મોટાભાગનો સમય કોડને ઑપ્ટિમાઇઝ કરવામાં પસાર થાય છે, લિંક કરવામાં નહીં.

તે પણ પ્રકાશિત થયેલ છે વિકલ્પો ઉમેર્યા “–પ્રિન્ટ-નિર્ભરતા” અને “–પ્રિન્ટ-નિર્ભરતા = સંપૂર્ણ” pનિર્ભરતા વિશે CSV ફોર્મેટમાં માહિતી જનરેટ કરવા ઇનપુટ ફાઇલો વચ્ચે, જેનો ઉપયોગ, ઉદાહરણ તરીકે, અમુક ઑબ્જેક્ટ ફાઇલોને લિંક કરતી વખતે અથવા ફાઇલો વચ્ચેની અવલંબન ઘટાડવા માટે કામ કરતી વખતે જોડાણના કારણોનું વિશ્લેષણ કરવા માટે થઈ શકે છે.

અન્ય ફેરફાર જે નવા સંસ્કરણથી અલગ છે તે છે RISC-V આર્કિટેક્ચર (RV64) માટે સપોર્ટ યજમાન અને લક્ષ્ય પ્લેટફોર્મ પર.

તે ઉપરાંત, અમે તે પણ શોધી શકીએ છીએ સરનામાં પુનઃસ્થાપન વિભાગોની નકલને સક્ષમ કરવા માટે "–emit-relocs" વિકલ્પ ઉમેર્યો પોસ્ટ-લિંક સ્ટેજ પર વધુ ઑપ્ટિમાઇઝેશન લાગુ કરવા માટે ઇનપુટ ફાઇલોથી અંતિમ ફાઇલો સુધી.

અન્ય ફેરફારો કે જે standભા છે:

  • વર્ચ્યુઅલ એડ્રેસ સ્પેસમાં તેમના સરનામાંને ઠીક કરતા પહેલા વિભાગોના ક્રમને રેન્ડમાઇઝ કરવા માટે "–શફલ-સેક્શન્સ" વિકલ્પ ઉમેર્યો.
  • "-વોર્ન-વન્સ" અને "-વોર્ન-ટેક્સ્ટ્રેલ" વિકલ્પો ઉમેર્યા.
  • libxxhash પર નિર્ભરતા દૂર કરી.

છેલ્લે જો તમને તેના વિશે વધુ જાણવામાં રસ છે, તમે માં વિગતો ચકાસી શકો છો નીચેની કડી

મોલ્ડ કેવી રીતે ઇન્સ્ટોલ કરવું?

જેઓ મોલ્ડ સાથે કામ કરવા માટે સક્ષમ થવામાં રસ ધરાવતા હોય, તેઓ સ્રોત કોડ ડાઉનલોડ કરીને અને કમ્પાઇલ કરીને ઉપયોગિતા મેળવી શકે છે. આ કરવા માટે, ફક્ત ટર્મિનલ ખોલો અને નીચે આપેલ લખો:

git clone https://github.com/rui314/mold.git
cd mold
git checkout v1.1.1
make -j$(nproc) CXX=clang++
sudo make install

મોલ્ડનો ઉપયોગ જાણવા માટે, તમે દસ્તાવેજોનો સંપર્ક કરી શકો છો આ કડી માં


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

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

*

*

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