TGMM: Combining Parse Tree with GPU for Scalable Multilingual and Multi-Granularity Code Clone Detection
arxiv(2024)
摘要
The rapid evolution of programming languages and software systems has
necessitated the implementation of multilingual and scalable clone detection
tools. However, it is difficult to achieve the above requirements at the same
time. Most existing tools only focus on one challenge. In this work, we propose
TGMM, a tree and GPU-based tool for multilingual and multi-granularity code
clone detection. By generating parse trees based on user-provided grammar
files, TGMM can extract code blocks at a specified granularity and detect
Type-3 clones efficiently. In order to show the performance of TGMM, we compare
it with seven state-of-the-art tools in terms of recall, precision, and
execution time. TGMM ranks first in execution time and precision, while its
recall is comparable to the others. Moreover, we analyzed the language
extensibility of TGMM across 30 mainstream programming languages. Out of these,
a total of 25 languages were supported, while the remaining five currently lack
the necessary grammar files. Finally, we analyzed the clone characteristics of
nine popular languages at five common granularities, hoping to inspire future
researchers. The source code of TGMM is available at:
https://github.com/TGMM24/TGMM.git.
更多查看译文
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要