Strumenti Utente

Strumenti Sito


magistraleinformaticanetworking:spm:spm1617cilk

Differenze

Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.

Link a questa pagina di confronto

Prossima revisione
Revisione precedente
magistraleinformaticanetworking:spm:spm1617cilk [08/11/2016 alle 16:26 (8 anni fa)]
Marco Danelutto creata
magistraleinformaticanetworking:spm:spm1617cilk [08/11/2016 alle 16:45 (8 anni fa)] (versione attuale)
Marco Danelutto
Linea 4: Linea 4:
  
 Codice: Codice:
-<code>+<code c++ "fib.cpp">
 #include <iostream> #include <iostream>
 #include <vector> #include <vector>
Linea 56: Linea 56:
 Makefile Makefile
  
-<code>+<code script "Makefile">
 SOURCE  = fib SOURCE  = fib
 CFLAGS  = -std=c++11 -g CFLAGS  = -std=c++11 -g
Linea 73: Linea 73:
  rm -f $(SOURCE)par $(SOURCE)seq  rm -f $(SOURCE)par $(SOURCE)seq
 </code> </code>
 +
 +==== Dummy ====
 +
 +<code c++ "dum.cpp">
 +#include <iostream>
 +#include <vector>
 +#include <chrono>
 +#include <thread>
 +#include <math.h>
 +
 +#include <stdlib.h>
 +
 +float loose(float x, long n) {
 +  for(int i=0; i<n; i++)
 +    x = sin(x);
 +  return(x);
 +}
 +
 +int main(int argc, char * argv []) {
 +
 +  int k,n = atoi(argv[1]);
 +  std::vector<float> v;
 +  
 +  std::chrono::time_point<std::chrono::system_clock> start, stop;
 +  start = std::chrono::system_clock::now();
 +#ifdef WITHCILK
 +  _Cilk_for (int k=0;k<=n;k++)
 +#else
 +    for(int k=0;k<=n;k++)
 +#endif
 +    v.push_back(loose(1.0,1000000));
 +  
 +  stop = std::chrono::system_clock::now();
 +  std::chrono::duration<double> elapsed_seconds = stop-start;
 +  std::cout << "Computed in " << elapsed_seconds.count()
 +     << " secs " << std::endl; 
 +  
 +  for(int i=0; i<=n; i++) 
 +    std::cout << // "fib(" << i << ")=" <<
 +      v[i] << " ";
 +  std::cout << std::endl;
 +  return(0); 
 +}
 +</code>
 +
magistraleinformaticanetworking/spm/spm1617cilk.1478622387.txt.gz · Ultima modifica: 08/11/2016 alle 16:26 (8 anni fa) da Marco Danelutto