62 lines
1.5 KiB
C++
62 lines
1.5 KiB
C++
|
|
/*
|
||
|
|
* Copyright 2011-2021 Blender Foundation
|
||
|
|
*
|
||
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
|
* you may not use this file except in compliance with the License.
|
||
|
|
* You may obtain a copy of the License at
|
||
|
|
*
|
||
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||
|
|
*
|
||
|
|
* Unless required by applicable law or agreed to in writing, software
|
||
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
|
* See the License for the specific language governing permissions and
|
||
|
|
* limitations under the License.
|
||
|
|
*/
|
||
|
|
|
||
|
|
#ifdef WITH_HIP
|
||
|
|
|
||
|
|
# include "device/hip/util.h"
|
||
|
|
# include "device/hip/device_impl.h"
|
||
|
|
|
||
|
|
CCL_NAMESPACE_BEGIN
|
||
|
|
|
||
|
|
HIPContextScope::HIPContextScope(HIPDevice *device) : device(device)
|
||
|
|
{
|
||
|
|
hip_device_assert(device, hipCtxPushCurrent(device->hipContext));
|
||
|
|
}
|
||
|
|
|
||
|
|
HIPContextScope::~HIPContextScope()
|
||
|
|
{
|
||
|
|
hip_device_assert(device, hipCtxPopCurrent(NULL));
|
||
|
|
}
|
||
|
|
|
||
|
|
# ifndef WITH_HIP_DYNLOAD
|
||
|
|
const char *hipewErrorString(hipError_t result)
|
||
|
|
{
|
||
|
|
/* We can only give error code here without major code duplication, that
|
||
|
|
* should be enough since dynamic loading is only being disabled by folks
|
||
|
|
* who knows what they're doing anyway.
|
||
|
|
*
|
||
|
|
* NOTE: Avoid call from several threads.
|
||
|
|
*/
|
||
|
|
static string error;
|
||
|
|
error = string_printf("%d", result);
|
||
|
|
return error.c_str();
|
||
|
|
}
|
||
|
|
|
||
|
|
const char *hipewCompilerPath()
|
||
|
|
{
|
||
|
|
return CYCLES_HIP_HIPCC_EXECUTABLE;
|
||
|
|
}
|
||
|
|
|
||
|
|
int hipewCompilerVersion()
|
||
|
|
{
|
||
|
|
return (HIP_VERSION / 100) + (HIP_VERSION % 100 / 10);
|
||
|
|
}
|
||
|
|
# endif
|
||
|
|
|
||
|
|
CCL_NAMESPACE_END
|
||
|
|
|
||
|
|
#endif /* WITH_HIP */
|