효과적인 CUDA 디버깅을 위한 CUDA 커널 분리 소프트웨어 도구
인공지능, 빅데이터 처리 등 다양한 분야에서 GPU를 이용한 병렬 처리 방법이 보편화 되면서 GPU 기반 병렬 처리에 대한 중요성이 점차 증가하고 있다. 그러나 GPU 기반 병렬 처리 소프트웨어의 개발 과정에서 보편적으로 널리 사용되는 디버거(Nvidia NSight)는 병렬 처리 기본 단위인 CUDA 커널(kernel)이 여러 개 존재할 때 내부적인 문제로 인하여 효율적인 디버깅을 수행할 수 없는 상황이 빈번하게 발생한다. 본 논문에서는 이러한 문제를 해결하기 위해 실행 중인 전체 CUDA 소스 코드에서 디버깅이 필요한 커널만을...
Saved in:
Published in | 디지털콘텐츠학회논문지 Vol. 21; no. 2; pp. 373 - 380 |
---|---|
Main Authors | , |
Format | Journal Article |
Language | Korean |
Published |
한국디지털콘텐츠학회
01.02.2020
|
Subjects | |
Online Access | Get full text |
ISSN | 1598-2009 2287-738X |
DOI | 10.9728/dcs.2020.21.2.373 |
Cover
Abstract | 인공지능, 빅데이터 처리 등 다양한 분야에서 GPU를 이용한 병렬 처리 방법이 보편화 되면서 GPU 기반 병렬 처리에 대한 중요성이 점차 증가하고 있다. 그러나 GPU 기반 병렬 처리 소프트웨어의 개발 과정에서 보편적으로 널리 사용되는 디버거(Nvidia NSight)는 병렬 처리 기본 단위인 CUDA 커널(kernel)이 여러 개 존재할 때 내부적인 문제로 인하여 효율적인 디버깅을 수행할 수 없는 상황이 빈번하게 발생한다. 본 논문에서는 이러한 문제를 해결하기 위해 실행 중인 전체 CUDA 소스 코드에서 디버깅이 필요한 커널만을 추출하고 실제 실행 상황에서 해당 커널에 입력되는 입력값을 추출해서 단위 테스트 수행을 자동화하는 소프트웨어 도구의 개발을 제안한다. 제안하는 도구는 개발 중인 CUDA 병렬 코드의 실행 흐름을 그대로 유지한 채로 디버깅이 필요한 특정 커널에 초점을 맞춰 디버깅을 수행할 수 있는 코드를 자동으로 생성한다. 본 논문에서는 제안하는 소프트웨어 도구의 구조와 원리를 소개하고 실제 NSight만으로 디버깅이 불가능한 사례에 적용하여 성공적으로 디버깅을 수행하는 사례를 소개한다. With the advent of artificial intelligence and big data analysis, the parallel processing technique based on the GPU has been playing a critical role in these fields. Unfortunately, the common debugger, NSight from Nvidia often fails to work when there are lots of CUDA kernels, which are basic parallel execution units due to internal limitations of NSight. In this paper, we present a software tool which can extract the kernel in the problem and its input information in the CUDA source code without affecting the original parallel execution of CUDA codes. We also introduce a case study where our software tool has been applied to the actual software development process for GPU-based parallel processing to prove the validity of the proposed unit tester. KCI Citation Count: 0 |
---|---|
AbstractList | 인공지능, 빅데이터 처리 등 다양한 분야에서 GPU를 이용한 병렬 처리 방법이 보편화 되면서 GPU 기반 병렬 처리에 대한 중요성이 점차 증가하고 있다. 그러나 GPU 기반 병렬 처리 소프트웨어의 개발 과정에서 보편적으로 널리 사용되는 디버거(Nvidia NSight)는 병렬 처리 기본 단위인 CUDA 커널(kernel)이 여러 개 존재할 때 내부적인 문제로 인하여 효율적인 디버깅을 수행할 수 없는 상황이 빈번하게 발생한다. 본 논문에서는 이러한 문제를 해결하기 위해 실행 중인 전체 CUDA 소스 코드에서 디버깅이 필요한 커널만을 추출하고 실제 실행 상황에서 해당 커널에 입력되는 입력값을 추출해서 단위 테스트 수행을 자동화하는 소프트웨어 도구의 개발을 제안한다. 제안하는 도구는 개발 중인 CUDA 병렬 코드의 실행 흐름을 그대로 유지한 채로 디버깅이 필요한 특정 커널에 초점을 맞춰 디버깅을 수행할 수 있는 코드를 자동으로 생성한다. 본 논문에서는 제안하는 소프트웨어 도구의 구조와 원리를 소개하고 실제 NSight만으로 디버깅이 불가능한 사례에 적용하여 성공적으로 디버깅을 수행하는 사례를 소개한다. With the advent of artificial intelligence and big data analysis, the parallel processing technique based on the GPU has been playing a critical role in these fields. Unfortunately, the common debugger, NSight from Nvidia often fails to work when there are lots of CUDA kernels, which are basic parallel execution units due to internal limitations of NSight. In this paper, we present a software tool which can extract the kernel in the problem and its input information in the CUDA source code without affecting the original parallel execution of CUDA codes. We also introduce a case study where our software tool has been applied to the actual software development process for GPU-based parallel processing to prove the validity of the proposed unit tester. KCI Citation Count: 0 |
Author | 박태정(Taejung Park) 양정아(Jung Ah Yang) |
Author_xml | – sequence: 1 fullname: 양정아(Jung Ah Yang) – sequence: 2 fullname: 박태정(Taejung Park) |
BackLink | https://www.kci.go.kr/kciportal/ci/sereArticleSearch/ciSereArtiView.kci?sereArticleSearchBean.artiId=ART002563290$$DAccess content in National Research Foundation of Korea (NRF) |
BookMark | eNotjD1Lw0AAhg-pYK39AW5ZHBwS7yOXu4ylrVooFqSCW7h8nIRqKgkOjkJ0EEGH6KAtOIh06OQXFf1FzeU_WGyX93nhfXhXQSnqRwEA6wgaNsN8y_cSA0MMDYwMbBBGlkAZY850RvhhCZQRtbmOIbRXQDVJQhdSQhjDGJdBp3gcTd9_1fOFGk60-kGjpuVZlr-l0-9LNUw1NUiL-8F8UD8veXqn5V9p_jrW1NVNkaXF9UQ9jdTDh5bfptPP8RpYluI4CaoLVkB3u9mt7-rtzk6rXmvrkWVi3ReMWxIxCoUwRWCaJoHMNQU3KeOeLaVLEbOoJ6l0SWD50vOJ52OEAkJmaZEK2JzfRrF0el7o9EX4z6O-04ud2n635Vg2QhSRmbuxcM_i8CTwQ-GczoqIz529TqMJbQJtzjD5A5AndN0 |
ContentType | Journal Article |
DBID | DBRKI TDB ACYCR |
DOI | 10.9728/dcs.2020.21.2.373 |
DatabaseName | DBPIA - 디비피아 Korean Database (DBpia) Korean Citation Index |
DatabaseTitleList | |
DeliveryMethod | fulltext_linktorsrc |
DocumentTitleAlternate | Software Tool to Separate CUDA Kernel for Effective CUDA Debugging |
DocumentTitle_FL | Software Tool to Separate CUDA Kernel for Effective CUDA Debugging |
EISSN | 2287-738X |
EndPage | 380 |
ExternalDocumentID | oai_kci_go_kr_ARTI_6911513 NODE09309872 |
GroupedDBID | ALMA_UNASSIGNED_HOLDINGS DBRKI M~E TDB ACYCR |
ID | FETCH-LOGICAL-n642-da786f1750aa4ae444307b4a84578c9ffb51765cf5fb3e6dfcd3cd211e3321163 |
ISSN | 1598-2009 |
IngestDate | Wed Apr 23 03:13:43 EDT 2025 Thu Feb 06 13:24:35 EST 2025 |
IsPeerReviewed | true |
IsScholarly | true |
Issue | 2 |
Keywords | CUDA NSight CUDA 커널 분리 Debugging 디버깅 Parallel Processing CUDA Kernel Separation 병렬 처리 |
Language | Korean |
LinkModel | OpenURL |
MergedId | FETCHMERGED-LOGICAL-n642-da786f1750aa4ae444307b4a84578c9ffb51765cf5fb3e6dfcd3cd211e3321163 |
Notes | http://dx.doi.org/10.9728/dcs.2020.21.2.373 |
PageCount | 8 |
ParticipantIDs | nrf_kci_oai_kci_go_kr_ARTI_6911513 nurimedia_primary_NODE09309872 |
PublicationCentury | 2000 |
PublicationDate | 2020-02 |
PublicationDateYYYYMMDD | 2020-02-01 |
PublicationDate_xml | – month: 02 year: 2020 text: 2020-02 |
PublicationDecade | 2020 |
PublicationTitle | 디지털콘텐츠학회논문지 |
PublicationYear | 2020 |
Publisher | 한국디지털콘텐츠학회 |
Publisher_xml | – name: 한국디지털콘텐츠학회 |
SSID | ssib053377222 ssib008451574 ssib049971524 ssib036278589 ssib053682487 |
Score | 2.1096923 |
Snippet | 인공지능, 빅데이터 처리 등 다양한 분야에서 GPU를 이용한 병렬 처리 방법이 보편화 되면서 GPU 기반 병렬 처리에 대한 중요성이 점차 증가하고 있다. 그러나 GPU 기반... |
SourceID | nrf nurimedia |
SourceType | Open Website Publisher |
StartPage | 373 |
SubjectTerms | 컴퓨터학 |
Title | 효과적인 CUDA 디버깅을 위한 CUDA 커널 분리 소프트웨어 도구 |
URI | https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE09309872 https://www.kci.go.kr/kciportal/ci/sereArticleSearch/ciSereArtiView.kci?sereArticleSearchBean.artiId=ART002563290 |
Volume | 21 |
hasFullText | 1 |
inHoldings | 1 |
isFullTextHit | |
isPrint | |
ispartofPNX | 디지털콘텐츠학회논문지, 2020, 21(2), , pp.373-380 |
journalDatabaseRights | – providerCode: PRVHPJ databaseName: ROAD: Directory of Open Access Scholarly Resources customDbUrl: eissn: 2287-738X dateEnd: 99991231 omitProxy: true ssIdentifier: ssib053682487 issn: 1598-2009 databaseCode: M~E dateStart: 20000101 isFulltext: true titleUrlDefault: https://road.issn.org providerName: ISSN International Centre |
link | http://utb.summon.serialssolutions.com/2.0.0/link/0/eLvHCXMwrR1Na9RANNR60IsoKtaPEsQ5LVmz85HMHJNsSi209bCFegr5VLuwldK9eBCE6EEEPawetAUPIj305BcV_UXd7H_wzSSb3argB8KSfcy89_LmvczMe8PMG027xjKGw8hODTOOiAGjX2pEwqRGSKNY0CgiWSIPCi-vWItrdGmdrc8cG0ztWupvR834_i_PlfyLVaEM7CpPyf6FZWumUAAw2BeeYGF4_pGNkd9GwkEOR76DXIJcD_keckxwDyUg2sjlDW-t7TSQ7yJB5Q8AFyNOFYlAnFWYnDYU5Kk64MsAHhN7yHWRo4ihVpiKn2spVKiwkOMpLA5FnqKmFRsOb-GKsavkBMBCLlUM-MJYDoaqFJAb44bV4kJ7bLkdQ_KiFS8XXsBVCQhpqhIum12JLSq9SFFcieMqwPEqcsVw_KVVIolWpTpRKoTJt2G-1JerRncat9SyupgQQfNLXBCCSK3V1Jh3wnRD0t1U-9DF9MIKRNHmkU0qtarHemj_r7ZPTzdCfdGlJKkqwxDDGjZRFy7Xc1R5irzqi3hqwiHlRTCV70JK7f04LQoby6MeSSzz02OziVtN3Kwpj2QbX1lt-6YgpuA2ODbHsW1Z8l6Q5Qd-PUpzCj7wJGgAD8jmbHJnAYTQNjiFdT3EExDBTZJEMmJxTNXNlXXzy-0GUszrPwkJTl9vC3zFE72-vPACRs0pB7BzWjtVRW66U3bDM9pMd_Ostjp6tXf44Vvx5mGxe6DL3qIPB4Ph-_zwy6NiN9eLnXz0YqesKL6-HebP9eHnfPhuXy8ePx0N8tGTg-L1XvHyoz58lh9-2j-ndRb8jrdoVHeUGD2I3I0ktLmVgQtuhiENU0opzJkRDUFHNo9FlkWsZVsszlgWkdRKsjghcYJbrZQQeFrkvDbb2-ylFzQ9ATQ7xTzhMmcjzrjFYHi1Rcwxj-MsmdOugh6Cbnw3kCnh5f_tzaC7FUDgeyOwwGlhLTKnzddqCu6V-WqCaZte_B3CJe3kpDNc1ma3t_rpFfC7t6N59Rl8B17Qpyg |
linkProvider | ISSN International Centre |
openUrl | ctx_ver=Z39.88-2004&ctx_enc=info%3Aofi%2Fenc%3AUTF-8&rfr_id=info%3Asid%2Fsummon.serialssolutions.com&rft_val_fmt=info%3Aofi%2Ffmt%3Akev%3Amtx%3Ajournal&rft.genre=article&rft.atitle=%ED%9A%A8%EA%B3%BC%EC%A0%81%EC%9D%B8+CUDA+%EB%94%94%EB%B2%84%EA%B9%85%EC%9D%84+%EC%9C%84%ED%95%9C+CUDA+%EC%BB%A4%EB%84%90+%EB%B6%84%EB%A6%AC+%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4+%EB%8F%84%EA%B5%AC&rft.jtitle=%EB%94%94%EC%A7%80%ED%84%B8%EC%BD%98%ED%85%90%EC%B8%A0%ED%95%99%ED%9A%8C%EB%85%BC%EB%AC%B8%EC%A7%80&rft.au=%EC%96%91%EC%A0%95%EC%95%84%28Jung+Ah+Yang%29&rft.au=%EB%B0%95%ED%83%9C%EC%A0%95%28Taejung+Park%29&rft.date=2020-02-01&rft.pub=%ED%95%9C%EA%B5%AD%EB%94%94%EC%A7%80%ED%84%B8%EC%BD%98%ED%85%90%EC%B8%A0%ED%95%99%ED%9A%8C&rft.issn=1598-2009&rft.eissn=2287-738X&rft.volume=21&rft.issue=2&rft.spage=373&rft.epage=380&rft_id=info:doi/10.9728%2Fdcs.2020.21.2.373&rft.externalDocID=NODE09309872 |
thumbnail_l | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/lc.gif&issn=1598-2009&client=summon |
thumbnail_m | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/mc.gif&issn=1598-2009&client=summon |
thumbnail_s | http://covers-cdn.summon.serialssolutions.com/index.aspx?isbn=/sc.gif&issn=1598-2009&client=summon |