%In this chapter, the focus is on testing I/O time. The method of testing is timing the execution time of only I/O. Since all parallelism is done in the convolution segment of the code, the timing of I/O is done separately and is considered as the I/O time for all implementations because they all use the same code for reading and writing operations to disk. The way in which time is recorded in the implementation is shown in Section \ref{testing}. Each implementation is tested 10 times and the median execution time is noted to assure quality of the sampled data. The complete data collection can be found in Appendix \ref{resulttables} in table form. In this chapter only the essential results are shown and discussed. Results will be presented in both graphs and tables. Later in this chapter the focus will be on explaining and discussing the results obtained.

In this chapter the focus is on testing the different implementations and documenting the results. The method of testing is timing the execution time of only I/O and the total execution time. Since all parallelism is done in the convolution segment of the code, the timing of I/O is done separately and is considered as the I/O time for all implementations because they all use the same code for reading and writing operations to disk. The way in which time is recorded in the implementation is shown in section \ref{testing}. The complete data collection can be found in the appendix \ref{resulttables} in table form. In this chapter only the essential results are shown and discussed. Results will be represented in both graphs and tables.  

For some implementations the time taken to perform convolution for larger sets of data takes several hours. Therefore a limit of one hour has been set such that if an implementation takes longer than one hour it times out. This is because each implementation is tested 10 times and the median execution time is noted to assure quality of the sampled data. In other words if an implementation takes one hour to execute, then it would take 10 hours to completely test. Because of the time constraints on this project one cannot test for several large sets if they are this time consuming. Yet the results are tests of several sizes that belong to the time range. The execution times are compared between the different implementations for speedup analysis, which proves to be sufficient in showing trends. This can also indicate if the implementations scale and how they scale given the problem size.
