Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

added atriumdb benchmark code #61

Merged
merged 4 commits into from
May 15, 2024
Merged

added atriumdb benchmark code #61

merged 4 commits into from
May 15, 2024

Conversation

tcpan
Copy link
Collaborator

@tcpan tcpan commented May 10, 2024

Quick, possible unoptimized implementation of atriumdb format. Uses SQLite for now. Requires installation of "atriumdb" python package.

@tompollard
Copy link
Contributor

This is great, thanks! Please could you add the atriumdb dependency to requirements.txt?

Copy link

Benchmark results:

________________________________________________________________
Format: waveform_benchmark.formats.atriumdb.AtriumDB
         (Example format using NPY)
Record: ./data/waveforms/mimic_iv/waves/p100/p10079700/85594648/85594648
         214981 seconds x 6 channels
         255177600 timepoints, 199126720 samples (78.0%)
________________________________________________________________
Channel summary information:
 signal       fs(Hz)     Bit resolution       Channel length(s)   
 II           249.89     0.005(mV)            212497              
 III          249.89     0.005(mV)            5                   
 V            249.89     0.005(mV)            212497              
 aVR          249.89     0.005(mV)            212492              
 Pleth        124.94     0.000244(NU)         212486              
 Resp         62.47      0.000244(Ohm)        212497              
________________________________________________________________
Output size:    119740 KiB (4.93 bits/sample)
Time to output: 790 sec
________________________________________________________________
Fidelity check:

Chunk		 Numeric Samples		  NaN Samples
	# Errors  /  Total	  % Eq  	NaN Values Match
Signal: II
  0  	         0/  51212896	100.000		    Y (7584)    
  1  	         0/     58944	100.000		    Y (1216)    
  2  	         0/   1818752	100.000		    Y (1408)    
Signal: III
  0  	         0/       960	100.000		    Y (320)     
Signal: V
  0  	         0/  51213248	100.000		    Y (7232)    
  1  	         0/     58944	100.000		    Y (1216)    
  2  	         0/   1818752	100.000		    Y (1408)    
Signal: aVR
  0  	         0/   3982176	100.000		    Y (1184)    
  1  	         0/  47229696	100.000		    Y (6144)    
  2  	         0/     58944	100.000		    Y (1216)    
  3  	         0/   1818752	100.000		    Y (1408)    
Signal: Pleth
  0  	         0/  25610240	100.000		     Y (0)      
  1  	         0/     29440	100.000		     Y (0)      
  2  	         0/    909440	100.000		     Y (0)      
Signal: Resp
  0  	         0/  12805120	100.000		     Y (0)      
  1  	         0/     15040	100.000		     Y (0)      
  2  	         0/    455040	100.000		     Y (0)      
________________________________________________________________
Read performance (median of N trials):
 #seek  #read      KiB      sec     [N]
     0     -1   119492   3.3138     [6] read 1 x 214981s, all channels
     0     -1     4896   0.1491   [115] read 5 x 500s, all channels
     0     -1    31924   1.3312    [14] read 50 x 50s, all channels
     0     -1   287840  13.3495     [3] read 500 x 5s, all channels
     0     -1    20076   0.6044    [38] read 1 x 214981s, one channel
     0     -1      940   0.0448   [352] read 5 x 500s, one channel
     0     -1     5078   0.4084    [46] read 50 x 50s, one channel
     0     -1    47668   2.0427     [5] read 500 x 5s, one channel
________________________________________________________________

@tompollard
Copy link
Contributor

Thanks @tcpan!

@tompollard tompollard merged commit 576e56d into main May 15, 2024
2 checks passed
@tompollard tompollard deleted the format-atriumdb branch May 15, 2024 17:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants