| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 | /* * This file is part of the StarPU Handbook. * Copyright (C) 2009--2011  Universit@'e de Bordeaux * Copyright (C) 2010, 2011, 2012, 2013  Centre National de la Recherche Scientifique * Copyright (C) 2011, 2012 Institut National de Recherche en Informatique et Automatique * See the file version.doxy for copying conditions. *//*! \page MICSCCSupport MIC Xeon Phi / SCC Support\section Compilation CompilationSCC support just needs the presence of the RCCE library.MIC Xeon Phi support actually needs two compilations of StarPU, one for the host and one forthe device. The PATH environment variable has to include the path to thecross-compilation toolchain, for instance <c>/usr/linux-k1om-4.7/bin</c>The script <c>mic-configure</c> can then be used to achieve the two compilations: it basicallycalls <c>configure</c> as appropriate from two new directories: <c>build_mic</c> and<c>build_host</c>. <c>make</c> and <c>make install</c> can then be used as usual and willrecurse into both directories.\section PortingApplicationsToMICSCC Porting Applications To MIC Xeon Phi / SCCThe simplest way to port an application to MIC Xeon Phi or SCC is to set the fieldstarpu_codelet::cpu_funcs_name, to provide StarPU with the functionname of the CPU implementation. StarPU will thus simply use theexisting CPU implementation (cross-rebuilt in the MIC Xeon Phi case). Thefunctions have to be globally-visible (i.e. not <c>static</c>) forStarPU to be able to look them up.For SCC execution, the function starpu_initialize() also has to beused instead of starpu_init(), so as to pass <c>argc</c> and<c>argv</c>.\section LaunchingPrograms Launching ProgramsSCC programs are started through RCCE.MIC programs are started from the host. StarPU automaticallystarts the same program on MIC devices. It however needs to getthe MIC-cross-built binary. It will look for the file given by theenvironment variable \ref STARPU_MIC_SINK_PROGRAM_NAME or in thedirectory given by the environment variable \refSTARPU_MIC_SINK_PROGRAM_PATH, or in the fieldstarpu_conf::mic_sink_program_path. It will also look in the currentdirectory for the same binary name plus the suffix <c>-mic</c> or<c>_mic</c>.The testsuite can be started by simply running <c>make check</c> from thetop directory. It will recurse into both <c>build_host</c> to run tests with onlythe host, and into <c>build_mic</c> to run tests with both the host and the MICdevices. Single tests with the host and the MIC can be run by starting<c>./loader-cross.sh ./the_test</c> from <c>build_mic/tests</c>.*/
 |