Intel® Cilk™ Plus

Using Cilk reducer inside Cilker shared function

Hi I am trying to offload some parallel work to MIC using _Cilk_Shared and _Cilk_offload. 

I declare a Cilk shared function:

_Cilk_shared void somefun(int count)

 

In main I call this function using 

_Cilk_offload somefun(12) ;

inside this function everything is expected to be offloaded to MIC;

I want to declare a Cilk reducer inside somefun, so I can then use cilk_for and append to a cilk reducer list, 

but I get error:

Unable to Compile GCC

I was following the instructions from https://www.cilkplus.org/build-gcc-cilkplus, and I consistently got an error saying that "tm.h": no file or directory was found. I'm not sure what tm.h is, or what package it is included with.

I installed the following packages: GNAT (probably doesn't help), GMP, MPFR, MPC, ISL, Flex, Bison.

My configuration options were `./configure --prefix=/usr/lib/gcc/cilkplus --enable-languages="c,c++" --disable-multilib`

On Ubuntu 14.10. 

Intel Software Tools Technical Webinar Series

These free technical webinars cover tips and techniques that will help sharpen your development skills to create faster, more reliable applications. Technical experts will cover topics ranging from vectorization, code migration, code optimization, using advanced threading techniques (e.g., OpenMP 4.0, Intel® Cilk™ Plus, Intel® TBB), and error checking. Bring programming questions to the live session for our technical experts to answer. A replay of each webinar will be available shortly after the live session so you can share with those unable to attend the live session.

  • Desarrolladores
  • C/C++
  • Fortran
  • Intel® Cilk™ Plus
  • Intel® MPI Library
  • Módulos Intel® de subprocesamiento
  • Intel® Cluster Studio XE
  • Intel® Fortran Studio XE
  • Intel® Parallel Studio XE
  • Intel® Advisor XE
  • Intel® VTune™ Amplifier XE
  • Intel® Inspector XE
  • Webinars
  • Arquitectura Intel® para muchos núcleos integrados
  • Intel® Parallel Studio XE 2016 Beta

  • Desarrolladores
  • Socios
  • Profesores
  • Estudiantes
  • Apple OS X*
  • Linux*
  • Microsoft Windows* (XP, Vista, 7)
  • Microsoft Windows* 8.x
  • Cliente empresarial
  • Servidor
  • .NET*
  • C#
  • C/C++
  • Fortran
  • Herramientas de clúster
  • Intel® Cluster Checker
  • Intel® MPI Benchmarks
  • Intel® Trace Analyzer and Collector
  • Intel® C++ Compiler
  • Intel® C++ Composer XE
  • Intel® Cilk™ Plus
  • Intel® Composer XE
  • Intel® Fortran Compiler
  • Intel® Fortran Composer XE
  • Intel® Visual Fortran Composer XE
  • Depuradores
  • Intel® Data Analytics Acceleration Library
  • Intel® Integrated Performance Primitives
  • Intel® Math Kernel Library
  • Intel® MPI Library
  • Módulos Intel® de subprocesamiento
  • Intel® C++ Studio XE
  • Intel® Cluster Studio XE
  • Intel® Fortran Studio XE
  • Intel® Parallel Studio XE
  • Intel® Parallel Studio XE Cluster Edition
  • Intel® Parallel Studio XE Composer Edition
  • Intel® Parallel Studio XE Professional Edition
  • Intel® Advisor XE
  • Intel® VTune™ Amplifier XE
  • Intel® Inspector XE
  • Kit de desarrollo de software Intel® Cilk Plus
  • Biblioteca Intel® Cluster Poisson Solver
  • Intel® Streaming SIMD Extensions
  • Mensaje pasa a interfaz
  • Académico
  • Big data (datos a gran escala)
  • Computación con clústeres
  • Depuración
  • Herramientas de desarrollo
  • Industria de servicios financieros
  • Ubicación geográfica
  • Atención de la salud
  • Optimización
  • Computación en paralelo
  • Subprocesos
  • Vectorización
  • Is cilk slower on Linux than on Windows?

    Currently, I am getting decent results with Intel 15 Cilk on Windows. However, the results is not nearly as good on Linux. My feeling is the overhead of a spawn is bigger on Linux. Any suggestions/comments?

    I had expected the opposite results i.e. better results on Linux. 

    I am using fairly new hardware and have tried to disable hyperthreading. Disabling hypertreading improves the result a bit but not much.

     

    Suscribirse a Intel® Cilk™ Plus