Tekniker för sammansmältning av programvara står inför utmaningen att hitta en balans mellan precision och prestanda. I praktiken använder utvecklare ostrukturerade sammanfogningsverktyg (dvs. linjebaserade) som är snabba men oprecisa. Inom den akademiska världen innehåller många tillvägagångssätt information om strukturen på de artefakter som slås samman. Även om detta ökar precisionen i upptäckt och lösning av konflikter, kan det leda till allvarliga resultatpåföljder. Genom att sträva efter en riktig balans mellan precision och prestanda föreslår vi en strukturerad sammanfogning med automatisk inställning. Kort sagt, vi justerar sammanfogningsprocessen on-line genom att växla mellan ostrukturerad och strukturerad sammanfogning, beroende på förekomsten av konflikter. Vi implementerade ett motsvarande sammanfogningsverktyg för Java, kallat JDime. Våra experiment med 8 verkliga Java-projekt, omfattande 72 sammanslagna scenarier med över 17 miljoner rader kod, visar att vår strategi verkligen träffar en söt punkt: Även om till stor del upprätthålla en precision som är överlägsen den ostrukturerade sammanfogning, strukturerad sammanfogning med auto-tuning är upp till 12 gånger snabbare än rent strukturerad sammanfogning, 5 gånger i genomsnitt.
I Ref föreslås också ett verktyg som justerar sammanslagningsprocessen on-line genom att växla mellan ostrukturerad och strukturerad sammanslagning, beroende på förekomsten av konflikter.
Structured merge with auto-tuning: balancing precision and performance
{'venue': 'ASE 2012', 'journal': None, 'mag_field_of_study': ['Computer Science']}