| Literature DB >> 29724227 |
Xiaomao Fan1,2,3,4, Qihang Yao1,3,4, Ye Li1,3,4, Runge Chen1,3,4, Yunpeng Cai5,6,7.
Abstract
BACKGROUND: Long-term electrocardiogram (ECG) is one of the important diagnostic assistant approaches in capturing intermittent cardiac arrhythmias. Combination of miniaturized wearable holters and healthcare platforms enable people to have their cardiac condition monitored at home. The high computational burden created by concurrent processing of numerous holter data poses a serious challenge to the healthcare platform. An alternative solution is to shift the analysis tasks from healthcare platforms to the mobile computing devices. However, long-term ECG data processing is quite time consuming due to the limited computation power of the mobile central unit processor (CPU).Entities:
Keywords: Automatic ECG analysis; Energy consumption; Mobile GPU; Parallel computing
Mesh:
Year: 2018 PMID: 29724227 PMCID: PMC5934809 DOI: 10.1186/s12938-018-0487-3
Source DB: PubMed Journal: Biomed Eng Online ISSN: 1475-925X Impact factor: 2.819
Fig. 1Memory model of OpenCL framework
Fig. 2ECG signal example with two cycles
Fig. 3Flowchart of the automatic ECG classification algorithm
Detailed judgment rules of 5 types of ECG rhythms.
| Type of rhythms | Rules |
|---|---|
| NB | QRS complex width < 120 ms |
| 0.75× average RR interval < current RR interval | |
| Current RR interval < 1.2× average RR interval | |
| APB | QRS complex width < 120 ms |
| Current RR interval < 0.75× current average RR interval | |
| Current RR interval + next RR interval < 2× current average RR interval | |
| VPB | QRS complex width > 120 ms |
| Current RR interval < 0.75× current average RR interval | |
| Current RR interval + next RR interval ≥ 2× current average RR interval | |
| BG | Alternating appearance of VPB and NB |
| TG | Alternating appearance of 2 NBs and 1 VPB |
Fig. 4Architecture of the parallel automatic ECG analysis algorithm on smartphone-based GPU
Fig. 5Experimental procedure. Long-term single lead ECG signals were taken by Mini-Holter. After the Mini-Holter was taken down from body, the ECG signals were transfer to smartphone for analysis via Bluetooth
Classification performance of the sequential and parallel automatic ECG algorithm on synthetic ECG data
| Type of rhythms | Number of records | |||
|---|---|---|---|---|
| NB | 3120 | 98.92 | 99.52 | 99.02 |
| APB | 240 | 99.60 | 99.34 | 99.34 |
| VPB | 240 | 98.03 | 99.02 | 98.00 |
| BG | 600 | 99.33 | 98.77 | 98.81 |
| TG | 400 | 100 | 99.07 | 99.10 |
| Average | 99.18 | 99.14 | 98.85 | |
Classification performance of the sequential and parallel automatic ECG algorithm on MIT-BIH arrhythmia database
| Type of rhythms | Number of records | |||
|---|---|---|---|---|
| NB | 74,695 | 98.24 | 97.76 | 98.15 |
| APB | 2745 | 86.12 | 99.27 | 99.03 |
| VPB | 5976 | 89.01 | 99.76 | 98.95 |
| Average | 91.12 | 98.93 | 98.71 | |
Classification performance of the sequential and parallel automatic ECG algorithm on clinical long-term ECG data
| Type of rhythms | Number of records | |||
|---|---|---|---|---|
| NB | 673,147 | 94.53 | 83.64 | 94.52 |
| APB | 481 | 80.04 | 96.31 | 96.30 |
| VPB | 268 | 83.95 | 98.88 | 98.87 |
| BG | 2 | 100 | 100 | 100 |
| TG | 1 | 100 | 100 | 100 |
| Average | 91.70 | 95.77 | 97.94 | |
Speedup of the parallel automatic ECG analysis algorithm in each step on a 24-h long ECG signal
| Step | Sequential program (s) | Parallel program (s) | Parallel-optimized program (s) | Speedup (parallel vs. sequential) | Speedup (parallel-optimized vs. sequential) |
|---|---|---|---|---|---|
| Artifact removal | 1.267 | 0.061 | 0.055 | 20.78× | 23.05× |
| QRS complex detection | 4.560 | 0.834 | 0.652 | 5.47× | 6.99× |
| ECG waveform classification | 1.155 | 0.268 | 0.265 | 4.31× | 4.36× |
| Total | 7.565 | 1.448 | 1.257 | 5.22× | 6.02× |
Fig. 6Speedup of the parallel automatic ECG analysis algorithm. Parallel means the parallel automatic ECG algorithm; parallel-optimized means that the parallel automatic ECG algorithm was further optimized by workgroup size tuning, data vectorization and zero memory copy technologies
Speedup of the parallel program on the long-term ECG dataset collected from the 301 hospital
| ECG no. | Length (h) | Sequential program (s) | Parallel program (s) | Speedup |
|---|---|---|---|---|
| 1 | 23.3 | 7.412 | 1.307 | 5.67× |
| 2 | 22.9 | 5.926 | 0.935 | 6.34× |
| 3 | 24.0 | 7.530 | 1.331 | 5.66× |
| 4 | 21.1 | 6.984 | 1.125 | 6.21× |
| 5 | 24.0 | 7.565 | 1.257 | 6.02× |
| 6 | 22.2 | 6.594 | 1.255 | 5.26× |
| 7 | 23.4 | 7.118 | 1.294 | 5.50× |
| Average | 23.0 ± 1.0 | 7.018 ± 0.592 | 1.215 ± 0.140 | 5.81 ± 0.39× |
Fig. 7Time cost analysis of the parallel program with ECG records with different lengths. Parallel means parallel automatic ECG classification algorithm; sequential means sequential automatic ECG classification algorithm
Power consumption for sequential and parallel algorithm on ECG data from 310 hospital
| ECG no. | Data loading | The sequential | The parallel | ||
|---|---|---|---|---|---|
| Energy (mWh) | Power (mW) | Energy (mWh) | Power (mW) | Energy (mWh) | |
| 1 | 6.84 | 1908.98 | 35.08 | 1845.93 | 12.48 |
| 2 | 6.36 | 1861.02 | 30.52 | 1841.35 | 11.5 |
| 3 | 6.65 | 1819.40 | 35.49 | 1807.44 | 12.86 |
| 4 | 6.55 | 1800.24 | 35.32 | 1811.56 | 11.21 |
| 5 | 6.96 | 1893.36 | 35.40 | 1818.13 | 12.83 |
| 6 | 6.12 | 1900.71 | 32.14 | 1805.11 | 11.82 |
| 7 | 6.22 | 1842.94 | 33.55 | 1858.84 | 12.44 |
| Average | 6.53 | 1860.95 ± 42.17 | 33.93 ± 1.95 | 1826.91 ± 21.44 | 12.16 ± 0.65 |