1 / 28

CHIRP SIGNAL ANALYSIS

CHIRP SIGNAL ANALYSIS. Cesar A Aceros Moreno. DCFT Definition. CHIRP Signal. OUTPUT OF THE DCFT. Dataflow of the DCFT. Structure of the datafiles. dataout.txt 128 -0.000000 real.x[0,0] -0.000000 imag.x[1,0] 0.000000 real.x[1,0] 0.000000 imag.x[1,0] ….

leiko
Download Presentation

CHIRP SIGNAL ANALYSIS

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CHIRP SIGNAL ANALYSIS Cesar A Aceros Moreno

  2. DCFT Definition

  3. CHIRP Signal

  4. OUTPUT OF THE DCFT

  5. Dataflow of the DCFT

  6. Structure of the datafiles • dataout.txt • 128 • -0.000000 real.x[0,0] • -0.000000 imag.x[1,0] • 0.000000 real.x[1,0] • 0.000000 imag.x[1,0] • …. • -0.000000 real.x[127,0] • 1.414215 imag.x[127,0] • -1.414213 real.x[0,1] • 0.000000 imag.x[0,1] • …. • -0.000000 real.x[127,1] • 0.000000 imag.x[127,1] • 1.913880 real.x[0,2] • 0.580570 imag.x[0,2] • datain.txt 128 1.000000 x[0] 0.000000 x[1] 0.555570 x[2] …. 0.831470 x[124] -0.195090 x[125] 0.980785 x[126] -0.707107 x[127]

  7. DCFT IMPLEMENTATIONS DCFT PC IMPLEMENTATION Matlab C CLUSTER IMPLEMENTATION PLANET LAB Serial Parallel

  8. DCFT Serial outfile = fopen("dataout.txt", "w"); fprintf(outfile,"%ld\n",nn); for (l=0;l<nn;l++){ printf("Layer %ld \n",l); for (i=1;i<2*nn+1;i++){ dataw[i]=data[i]; } haddamard(dataw,nn,l); four1(dataw,nn,1); for (i=1;i<2*nn+1;i++){ dataw[i]=dataw[i]/sqrt(nn); fprintf(outfile,"%f\n", dataw[i] ); } } fclose(outfile); } main() { char temp[1]; float *data, *dataw; long int nn=0; int i=0,l=0; FILE *infile,*outfile; if ((infile = fopen("datain.txt", "r")) == NULL) fprintf(stderr,"Cannot open file"); fscanf(infile,"%d",&nn); printf("Valor size: %d\n",nn); data = malloc(sizeof(float)*nn*2); dataw = malloc(sizeof(float)*nn*2); for (i=1;i<2*nn+1;i++){ fscanf(infile,"%f",&data[i]); } fclose(infile);

  9. Experiment Description: createdata • For the experiment the sample size was limited to be within the set {6000, 7000, 8000} • The sample size was varied from one experimental run to the next. • The values of K0 and L0 where chosen randomly on each run.

  10. Experiment Description: dcft • Input: • Reads the file datain generated by createdata. • Output: • Calculates the DCFT of the input data and prints the results to a file named dataout.

  11. Experiment Description • Of the two programs dcft is the only one of interest. • Utilized Paradyn to instrument and analyze the performance of dcft.

  12. Analyzing Performance with Paradyn

  13. Analyzing Performance with Paradyn: Process Specification

  14. Analyzing Performance with Paradyn: Process Specification

  15. Analyzing Performance with Paradyn: The Where Axis

  16. Analyzing Performance with Paradyn: Metric Specification

  17. Analyzing Performance with Paradyn: Metric Descriptions • cpu – Each bin represents thepercentage of cpu time spent during the corresponding time interval. Aggregation is total cpu time over an interval. • cpu_inclusive – Same as cpu but includes called procedures in the process time calculation. • exec_time - Each bin represents theelapsed wall clock time per unit during the corresponding time interval. Aggregation is the sum over the interval.

  18. Analyzing Performance with Paradyn: Metric Descriptions • io_bytes – This metric represents the number of bytes for Input/Output operations. Currently, only “read” and “write” are supported as input/output operations for UNIX, MPI, and PVM. • io_ops – Number of Input/Output operations. IO operations are the same as for io_bytes. • io_wait – Time spent during Input/Output operations. IO operations are the same as for io_bytes. • io_wait_inclusive – Same as io_wait but includes called procedures in the process time calculation.

  19. Analyzing Performance with Paradyn: Bottleneck Analysis

  20. Analyzing Performance with Paradyn: Results Sampling Size = 7000, K0 = 15, L0 =15

  21. Analyzing Performance with Paradyn: Results Sampling Size = 7000, K0 = 15, L0 =15

  22. Sampling Size = 8000, K0 = 10, L0 =10 Analyzing Performance with Paradyn: Results

  23. Sampling Size = 8000, K0 = 10, L0 =10 Analyzing Performance with Paradyn: Results

  24. Analyzing Performance with Paradyn: Results

  25. FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data (as well as of even/odd data, i.e. the discrete cosine/sine transforms or DCT/DST). We believe that FFTW, which is free software, should become the FFT library of choice for most applications. #include <fftw_mpi.h> #include <fftw.h> plan = fftw_mpi_create_plan(MPI_COMM_WORLD, NX , FFTW_FORWARD, FFTW_IN_PLACE); fftw_mpi(plan, 1, datainC, dataout); fftw_mpi_destroy_plan(plan);

  26. Results of Execution Time.

  27. PLANET LAB • CHIRP IMPLEMENTATION

More Related