P4 to Git Change 1079952 by yaxunl@yaxunl_stg_win50 on 2014/09/23 12:31:16
ECR #377625 - Workaround for Blender performance issue. Lower available VGPRs to improve waves per CU. Added BuildOptsAppend to OCL app profile. Read BuildOptsAppend and append to build options. Added specific wave optimization option for Blender. Affected files ... ... //depot/stg/opencl/drivers/opencl/appprofiles/oclappprofile.xml#7 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/backends/gpu/scwrapper/SI/scCompileSI.cpp#45 edit ... //depot/stg/opencl/drivers/opencl/compiler/lib/utils/OPTIONS.def#116 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/appprofile.cpp#10 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/appprofile.hpp#8 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/device.cpp#170 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/device.hpp#230 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuappprofile.cpp#10 edit ... //depot/stg/opencl/drivers/opencl/runtime/device/gpu/gpuappprofile.hpp#6 edit ... //depot/stg/opencl/drivers/opencl/runtime/platform/program.cpp#63 edit
Dieser Commit ist enthalten in:
@@ -1,7 +1,8 @@
|
||||
//
|
||||
// Copyright (c) 2008 Advanced Micro Devices, Inc. All rights reserved.
|
||||
//
|
||||
|
||||
#include "top.hpp"
|
||||
#include "device/appprofile.hpp"
|
||||
#include "platform/program.hpp"
|
||||
#include "platform/context.hpp"
|
||||
#include "utils/options.hpp"
|
||||
@@ -174,6 +175,10 @@ Program::compile(
|
||||
// Override options.
|
||||
cppstr = AMD_OCL_BUILD_OPTIONS;
|
||||
}
|
||||
if (!Device::appProfile()->GetBuildOptsAppend().empty()) {
|
||||
cppstr.append(" ");
|
||||
cppstr.append(Device::appProfile()->GetBuildOptsAppend());
|
||||
}
|
||||
if (AMD_OCL_BUILD_OPTIONS_APPEND != NULL) {
|
||||
cppstr.append(" ");
|
||||
cppstr.append(AMD_OCL_BUILD_OPTIONS_APPEND);
|
||||
@@ -426,6 +431,10 @@ Program::build(
|
||||
// Override options.
|
||||
cppstr = AMD_OCL_BUILD_OPTIONS;
|
||||
}
|
||||
if (!Device::appProfile()->GetBuildOptsAppend().empty()) {
|
||||
cppstr.append(" ");
|
||||
cppstr.append(Device::appProfile()->GetBuildOptsAppend());
|
||||
}
|
||||
if (AMD_OCL_BUILD_OPTIONS_APPEND != NULL) {
|
||||
cppstr.append(" ");
|
||||
cppstr.append(AMD_OCL_BUILD_OPTIONS_APPEND);
|
||||
@@ -543,6 +552,10 @@ Program::buildNoOpt(const Device& device, const std::string& kernelName)
|
||||
// Override options.
|
||||
cppstr = AMD_OCL_BUILD_OPTIONS;
|
||||
}
|
||||
if (!Device::appProfile()->GetBuildOptsAppend().empty()) {
|
||||
cppstr.append(" ");
|
||||
cppstr.append(Device::appProfile()->GetBuildOptsAppend());
|
||||
}
|
||||
if (AMD_OCL_BUILD_OPTIONS_APPEND != NULL) {
|
||||
cppstr.append(" ");
|
||||
cppstr.append(AMD_OCL_BUILD_OPTIONS_APPEND);
|
||||
|
||||
In neuem Issue referenzieren
Einen Benutzer sperren