Cargando…

Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction

The clock speeds of modern computer processors have nearly plateaued in the past 5 years. Consequently, neural prosthetic systems that rely on processing large quantities of data in a short period of time face a bottleneck, in that it may not be possible to process all of the data recorded from an e...

Descripción completa

Detalles Bibliográficos
Autores principales: Wilson, J. Adam, Williams, Justin C.
Formato: Texto
Lenguaje:English
Publicado: Frontiers Research Foundation 2009
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2715290/
https://www.ncbi.nlm.nih.gov/pubmed/19636394
http://dx.doi.org/10.3389/neuro.16.011.2009
_version_ 1782169765114019840
author Wilson, J. Adam
Williams, Justin C.
author_facet Wilson, J. Adam
Williams, Justin C.
author_sort Wilson, J. Adam
collection PubMed
description The clock speeds of modern computer processors have nearly plateaued in the past 5 years. Consequently, neural prosthetic systems that rely on processing large quantities of data in a short period of time face a bottleneck, in that it may not be possible to process all of the data recorded from an electrode array with high channel counts and bandwidth, such as electrocorticographic grids or other implantable systems. Therefore, in this study a method of using the processing capabilities of a graphics card [graphics processing unit (GPU)] was developed for real-time neural signal processing of a brain–computer interface (BCI). The NVIDIA CUDA system was used to offload processing to the GPU, which is capable of running many operations in parallel, potentially greatly increasing the speed of existing algorithms. The BCI system records many channels of data, which are processed and translated into a control signal, such as the movement of a computer cursor. This signal processing chain involves computing a matrix–matrix multiplication (i.e., a spatial filter), followed by calculating the power spectral density on every channel using an auto-regressive method, and finally classifying appropriate features for control. In this study, the first two computationally intensive steps were implemented on the GPU, and the speed was compared to both the current implementation and a central processing unit-based implementation that uses multi-threading. Significant performance gains were obtained with GPU processing: the current implementation processed 1000 channels of 250 ms in 933 ms, while the new GPU method took only 27 ms, an improvement of nearly 35 times.
format Text
id pubmed-2715290
institution National Center for Biotechnology Information
language English
publishDate 2009
publisher Frontiers Research Foundation
record_format MEDLINE/PubMed
spelling pubmed-27152902009-07-27 Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction Wilson, J. Adam Williams, Justin C. Front Neuroengineering Neuroscience The clock speeds of modern computer processors have nearly plateaued in the past 5 years. Consequently, neural prosthetic systems that rely on processing large quantities of data in a short period of time face a bottleneck, in that it may not be possible to process all of the data recorded from an electrode array with high channel counts and bandwidth, such as electrocorticographic grids or other implantable systems. Therefore, in this study a method of using the processing capabilities of a graphics card [graphics processing unit (GPU)] was developed for real-time neural signal processing of a brain–computer interface (BCI). The NVIDIA CUDA system was used to offload processing to the GPU, which is capable of running many operations in parallel, potentially greatly increasing the speed of existing algorithms. The BCI system records many channels of data, which are processed and translated into a control signal, such as the movement of a computer cursor. This signal processing chain involves computing a matrix–matrix multiplication (i.e., a spatial filter), followed by calculating the power spectral density on every channel using an auto-regressive method, and finally classifying appropriate features for control. In this study, the first two computationally intensive steps were implemented on the GPU, and the speed was compared to both the current implementation and a central processing unit-based implementation that uses multi-threading. Significant performance gains were obtained with GPU processing: the current implementation processed 1000 channels of 250 ms in 933 ms, while the new GPU method took only 27 ms, an improvement of nearly 35 times. Frontiers Research Foundation 2009-07-14 /pmc/articles/PMC2715290/ /pubmed/19636394 http://dx.doi.org/10.3389/neuro.16.011.2009 Text en Copyright © 2009 Wilson and Williams. http://www.frontiersin.org/licenseagreement This is an open-access article subject to an exclusive license agreement between the authors and the Frontiers Research Foundation, which permits unrestricted use, distribution, and reproduction in any medium, provided the original authors and source are credited.
spellingShingle Neuroscience
Wilson, J. Adam
Williams, Justin C.
Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction
title Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction
title_full Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction
title_fullStr Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction
title_full_unstemmed Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction
title_short Massively Parallel Signal Processing using the Graphics Processing Unit for Real-Time Brain–Computer Interface Feature Extraction
title_sort massively parallel signal processing using the graphics processing unit for real-time brain–computer interface feature extraction
topic Neuroscience
url https://www.ncbi.nlm.nih.gov/pmc/articles/PMC2715290/
https://www.ncbi.nlm.nih.gov/pubmed/19636394
http://dx.doi.org/10.3389/neuro.16.011.2009
work_keys_str_mv AT wilsonjadam massivelyparallelsignalprocessingusingthegraphicsprocessingunitforrealtimebraincomputerinterfacefeatureextraction
AT williamsjustinc massivelyparallelsignalprocessingusingthegraphicsprocessingunitforrealtimebraincomputerinterfacefeatureextraction