Using a Nearest-Neighbour, BERT-Based Approach for Scalable Clone Detection

Muslim Chochlov, Gul Aftab Ahmed, James Vincent Patten, Guoxian Lu, Wei Hou, David Gregg, Jim Buckley

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

Code clones can detrimentally impact software maintenance and manually detecting them in very large code-bases is impractical. Additionally, automated approaches find detection of Type 3 and Type 4 (inexact) clones very challenging. While the most recent artificial deep neural networks (for ex-ample BERT-based artificial neural networks) seem to be highly effective in detecting such clones, their pairwise comparison of every code pair in the target system(s) is inefficient and scales poorly on large codebases. We therefore introduce SSCD, a BERT-based clone detection approach that targets high recall of Type 3 and Type 4 clones at scale (in line with our industrial partner's requirements). It does so by computing a representative embedding for each code fragment and finding similar fragments using a nearest neighbour search. SSCD thus avoids the pairwise-comparison bottleneck of other Neural Network approaches while also using parallel, GPU-accelerated search to tackle scalability. This paper details the approach and an empirical assessment towards configuring and evaluating that approach in industrial setting. The configuration analysis suggests that shorter input lengths and text-only based neural network models demonstrate better efficiency in SSCD, while only slightly decreasing effectiveness. The evaluation results suggest that SSCD is more effective than state-of-the-art approaches like SAGA and SourcererCC. It is also highly efficient: in its optimal setting, SSCD effectively locates clones in the entire 320 million LOC BigCloneBench (a standard clone detection benchmark) in just under three hours.

Original languageEnglish
Title of host publicationProceedings - 2022 IEEE International Conference on Software Maintenance and Evolution, ICSME 2022
PublisherInstitute of Electrical and Electronics Engineers Inc.
Pages582-591
Number of pages10
ISBN (Electronic)9781665479561
DOIs
Publication statusPublished - 2022
Event39th IEEE International Conference on Software Maintenance and Evolution, ICSME 2022 - Limassol, Cyprus
Duration: 2 Oct 20227 Oct 2022

Publication series

NameProceedings - 2022 IEEE International Conference on Software Maintenance and Evolution, ICSME 2022

Conference

Conference39th IEEE International Conference on Software Maintenance and Evolution, ICSME 2022
Country/TerritoryCyprus
CityLimassol
Period2/10/227/10/22

Keywords

  • Clone detection
  • deep neural networks
  • scalable
  • semantic clones

Fingerprint

Dive into the research topics of 'Using a Nearest-Neighbour, BERT-Based Approach for Scalable Clone Detection'. Together they form a unique fingerprint.

Cite this