Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/3624062.3624064acmotherconferencesArticle/Chapter ViewAbstractPublication PagesscConference Proceedingsconference-collections
research-article
Open access

VSCuda: LLM based CUDA extension for Visual Studio Code

Published: 12 November 2023 Publication History

Abstract

The CUDA programming language has developed to constantly accommodate new functionalities since its introduction. For beginners in particular, it is already difficult to remember the expected function parameters of commonly used CUDA features, let alone optimize their code by exploiting newly introduced functionalities. To reduce the burden for CUDA programmers, we propose VSCuda, a Visual Studio Code extension for CUDA C/C++ that includes functionalities including but not limited to CUDA syntax highlighting, code help for all CUDA APIs, code completion for all CUDA functions, and integrated code improvement suggestions from state-of-the-art large language models.

References

[1]
n.d. Cody - Sourcegraph. https://sourcegraph.com/cody.
[2]
n.d. GitHub Copilot documentation.
[3]
n.d. Introducing ChatGPT. https://openai.com/blog/chatgpt.
[4]
Anyscale. n.d. Pricing and billing | Anyscale Endpoints. Retrieved 25 September 2023 from https://docs.endpoints.anyscale.com/pricing/
[5]
Arghavan Moradi Dakhel, Vahid Majdinasab, Amin Nikanjam, Foutse Khomh, and Michel C Desmarais. n.d. GitHub Copilot AI pair programmer: Asset or Liability? (n.d.).
[6]
Cem Dilmegani. 2023. Large Language Models: Complete Guide in 2023. https://research.aimultiple.com/large-language-models/.
[7]
Shihan Dou, Junjie Shan, Haoxiang Jia, Wenhao Deng, Zhiheng Xi, Wei He, Yueming Wu, Tao Gui, Yang Liu, and Xuanjing Huang. 2023. Towards Understanding the Capability of Large Language Models on Code Clone Detection: A Survey.
[8]
Saki Imai. 2022. Is GitHub Copilot a Substitute for Human Pair-Programming? An Empirical Study. In Proceedings of the ACM/IEEE 44th International Conference on Software Engineering: Companion Proceedings (Pittsburgh, Pennsylvania) (ICSE ’22). Association for Computing Machinery, New York, NY, USA, 319–321. https://doi.org/10.1145/3510454.3522684
[9]
Deep Infra. n.d. Pricing - DeepInfra. Retrieved 25 September 2023 from https://deepinfra.com/pricing
[10]
kriegalex. 2021. CUDA C++ syntax support & snippets for VSCode. https://github.com/kriegalex/vscode-cuda/tree/develop
[11]
Raymond Li, Loubna Ben Allal, Yangtian Zi, Niklas Muennighoff, Denis Kocetkov, Chenghao Mou, Marc Marone, Christopher Akiki, Jia Li, Jenny Chim, Qian Liu, Evgenii Zheltonozhskii, Terry Yue Zhuo, Thomas Wang, Olivier Dehaene, Mishig Davaadorj, Joel Lamy-Poirier, João Monteiro, Oleh Shliazhko, Nicolas Gontier, Nicholas Meade, Armel Zebaze, Ming-Ho Yee, Logesh Kumar Umapathi, Jian Zhu, Benjamin Lipkin, Muhtasham Oblokulov, Zhiruo Wang, Rudra Murthy, Jason Stillerman, Siva Sankalp Patel, Dmitry Abulkhanov, Marco Zocca, Manan Dey, Zhihan Zhang, Nour Fahmy, Urvashi Bhattacharyya, Wenhao Yu, Swayam Singh, Sasha Luccioni, Paulo Villegas, Maxim Kunakov, Fedor Zhdanov, Manuel Romero, Tony Lee, Nadav Timor, Jennifer Ding, Claire Schlesinger, Hailey Schoelkopf, Jan Ebert, Tri Dao, Mayank Mishra, Alex Gu, Jennifer Robinson, Carolyn Jane Anderson, Brendan Dolan-Gavitt, Danish Contractor, Siva Reddy, Daniel Fried, Dzmitry Bahdanau, Yacine Jernite, Carlos Muñoz Ferrandis, Sean Hughes, Thomas Wolf, Arjun Guha, Leandro von Werra, and Harm de Vries. 2023. StarCoder: may the source be with you!arxiv:2305.06161 [cs.CL]
[12]
Yiheng Liu, Tianle Han, Siyuan Ma, Jiayue Zhang, Yuanyuan Yang, Jiaming Tian, Hao He, Antong Li, Mengshen He, Zhengliang Liu, Zihao Wu, Lin Zhao, Dajiang Zhu, Xiang Li, Ning Qiang, Dingang Shen, Tianming Liu, and Bao Ge. 2023. Summary of ChatGPT-Related Research and Perspective Towards the Future of Large Language Models. (April 2023). arxiv:2304.01852 [cs.CL]
[13]
Microsoft. n.d. Visual Studio Code :: Documentation. Retrieved 3 August 2023 from https://code.visualstudio.com/docs
[14]
Microsoft. 2023. Visual Studio Code :: Extension API. Retrieved 3 August 2023 from https://code.visualstudio.com/api
[15]
Microsoft. 2023. Visual Studio Code :: Extensions Capabilities Overview. Retrieved 3 August 2023 from https://code.visualstudio.com/api/extension-capabilities/overview
[16]
Microsoft. 2023. Visual Studio Code :: Requirements for Visual Studio Code. Retrieved 3 August 2023 from https://code.visualstudio.com/docs/supporting/requirements
[17]
Microsoft. 2023. Visual Studio Code :: VS Code API. Retrieved 3 August 2023 from https://code.visualstudio.com/api/references/vscode-api
[18]
Microsoft. 2023. VS Code Discussions. Retrieved 3 August 2023 from https://github.com/microsoft/vscode-discussions/discussions
[19]
Microsoft. 2023. VS Code Extension Samples. https://github.com/microsoft/vscode-extension-samples
[20]
MosaicML. n.d. MosaicML Inference. Retrieved 25 September 2023 from https://www.mosaicml.com/inference
[21]
Daye Nam, Andrew Macvean, Vincent Hellendoorn, Bogdan Vasilescu, and Brad Myers. 2023. In-IDE Generation-Based Information Support with a Large Language Model.
[22]
Nhan Nguyen and Sarah Nadi. 2022. An Empirical Evaluation of GitHub Copilot’s Code Suggestions. Proceedings of the 19th International Conference on Mining Software Repositories, 1–5. https://doi.org/10.1145/3524842.3528470
[23]
NVIDIA. 2023. CUDA C++ Best Practices Guide. Retrieved July 25, 2023 from https://docs.nvidia.com/cuda/pdf/CUDA_C_Best_Practices_Guide.pdf
[24]
NVIDIA. 2023. CUDA Runtime API :: CUDA Toolkit Documentation. Retrieved 3 August 2023 from https://docs.nvidia.com/cuda/cuda-runtime-api/index.html
[25]
NVIDIA. 2023. CUDA Toolkit Documentation. Retrieved 3 August 2023 from https://docs.nvidia.com/cuda/
[26]
OpenAI. n.d. Pricing - OpenAI. Retrieved 25 September 2023 from https://openai.com/pricing
[27]
OpenAI. 2023. GPT-4 Technical Report. arxiv:2303.08774 [cs.CL]
[28]
Stack Overflow. 2023. Stack Overflow Developer Survey 2023. Retrieved 1 August 2023 from https://survey.stackoverflow.co/2023/
[29]
Shishir G Patil, Tianjun Zhang, Xin Wang, and Joseph E Gonzalez. 2023. Gorilla: Large Language Model Connected with Massive APIs. (May 2023). arxiv:2305.15334 [cs.CL]
[30]
Luis Perez. n.d. code-gen: Code Generator.
[31]
Leonard Richardson. n.d. Beautiful Soup. Retrieved 25 September 2023 from https://www.crummy.com/software/BeautifulSoup/
[32]
Vyom Srivastava. n.d. 7 Large Language Model (LLM) APIs. https://nordicapis.com/7-large-language-model-llm-apis/.
[33]
Chee Wei Tan, Shangxin Guo, Man Fai Wong, and Ching Nam Hang. 2023. Copilot for Xcode: Exploring AI-Assisted Programming by Prompting Cloud-based Large Language Models.
[34]
Hugo Touvron, Louis Martin, Kevin Stone, Peter Albert, Amjad Almahairi, Yasmine Babaei, Nikolay Bashlykov, Soumya Batra, Prajjwal Bhargava, Shruti Bhosale, Dan Bikel, Lukas Blecher, Cristian Canton Ferrer, Moya Chen, Guillem Cucurull, David Esiobu, Jude Fernandes, Jeremy Fu, Wenyin Fu, Brian Fuller, Cynthia Gao, Vedanuj Goswami, Naman Goyal, Anthony Hartshorn, Saghar Hosseini, Rui Hou, Hakan Inan, Marcin Kardas, Viktor Kerkez, Madian Khabsa, Isabel Kloumann, Artem Korenev, Punit Singh Koura, Marie-Anne Lachaux, Thibaut Lavril, Jenya Lee, Diana Liskovich, Yinghai Lu, Yuning Mao, Xavier Martinet, Todor Mihaylov, Pushkar Mishra, Igor Molybog, Yixin Nie, Andrew Poulton, Jeremy Reizenstein, Rashi Rungta, Kalyan Saladi, Alan Schelten, Ruan Silva, Eric Michael Smith, Ranjan Subramanian, Xiaoqing Ellen Tan, Binh Tang, Ross Taylor, Adina Williams, Jian Xiang Kuan, Puxin Xu, Zheng Yan, Iliyan Zarov, Yuchen Zhang, Angela Fan, Melanie Kambadur, Sharan Narang, Aurelien Rodriguez, Robert Stojnic, Sergey Edunov, and Thomas Scialom. 2023. Llama 2: Open Foundation and Fine-Tuned Chat Models. arxiv:2307.09288 [cs.CL]
[35]
Multi-Root Workspace. n.d. Language Server Extension Guide. https://code.visualstudio.com/api/language-extensions/language-server-extension-guide.
[36]
Beiqi Zhang, Peng Liang, Xiyu Zhou, Aakash Ahmad, and Muhammad Waseem. 2023. Practices and Challenges of Using GitHub Copilot: An Empirical Study. The 35th International Conference on Software Engineering and Knowledge Engineering (SEKE) (2023). https://arxiv.org/abs/2303.08733
[37]
Shun Zhang, Zhenfang Chen, Yikang Shen, Mingyu Ding, Joshua B Tenenbaum, and Chuang Gan. 2023. Planning with Large Language Models for Code Generation. (March 2023). arxiv:2303.05510 [cs.LG]

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
SC-W '23: Proceedings of the SC '23 Workshops of The International Conference on High Performance Computing, Network, Storage, and Analysis
November 2023
2180 pages
ISBN:9798400707858
DOI:10.1145/3624062
This work is licensed under a Creative Commons Attribution International 4.0 License.

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 12 November 2023

Check for updates

Author Tags

  1. CUDA
  2. IDE extension
  3. Large Language Models
  4. Visual Studio Code

Qualifiers

  • Research-article
  • Research
  • Refereed limited

Conference

SC-W 2023

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 1,272
    Total Downloads
  • Downloads (Last 12 months)1,272
  • Downloads (Last 6 weeks)194
Reflects downloads up to 01 Sep 2024

Other Metrics

Citations

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

HTML Format

View this article in HTML Format.

HTML Format

Get Access

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media