-
Mathieu Faverge authoredMathieu Faverge authored
common.h 3.60 KiB
/**
*
* @copyright 2009-2014 The University of Tennessee and The University of
* Tennessee Research Foundation. All rights reserved.
* @copyright 2012-2015 Bordeaux INP, CNRS (LaBRI UMR 5800), Inria,
* Univ. Bordeaux. All rights reserved.
*
**/
/**
*
* @file common.h
*
* MORSE codelets kernel
* MORSE is a software package provided by Univ. of Tennessee,
* Univ. of California Berkeley and Univ. of Colorado Denver,
* and INRIA Bordeaux Sud-Ouest
*
* @version 0.9.0
* @author Mathieu Faverge
* @author Cedric Castagnede
* @date 2012-09-15
*
**/
/*******************************************************************************
* MORSE facilities of interest to both MORSE core developer
* and also of interest to MORSE community contributor.
**/
#ifndef _MORSE_COMMON_H_
#define _MORSE_COMMON_H_
#if defined( _WIN32 ) || defined( _WIN64 )
#include <io.h>
#else
#include <unistd.h>
#endif
/** ****************************************************************************
* Implementation headers
**/
#if defined(CHAMELEON_USE_CUDA) && !defined(CHAMELEON_SIMULATION)
#include <cuda.h>
#include <cuda_runtime.h>
#include <cuda_runtime_api.h>
#if defined(CHAMELEON_USE_CUBLAS_V2)
#include <cublas.h>
#include <cublas_v2.h>
#else
#include <cublas.h>
#endif
#endif
#if defined(CHAMELEON_USE_OPENCL) && !defined(CHAMELEON_SIMULATION)
#include <OpenCL/cl.h>
#endif
#if defined(CHAMELEON_USE_MPI)
#include <mpi.h>
#endif
/** ****************************************************************************
* Line to avoid conflict with other linear algebra libraries, because, we
* don't know why but lapacke provide a wrong interface of lapack in fortran
**/
#ifndef LAPACK_NAME
#define LAPACK_NAME(a, b) lapackef77_##a
#endif