Kaydet (Commit) ef47ce23 authored tarafından Michael Meeks's avatar Michael Meeks

tdf#90336 - further cleanup of OpenCL options page.

Still problematic; since we only show OpenCL as being available
if it has already been initialized and used.

Change-Id: I5e82a3f778f4f2025408330b6d9da51402d01e79
Reviewed-on: https://gerrit.libreoffice.org/26866Tested-by: 's avatarJenkins <ci@libreoffice.org>
Reviewed-by: 's avatarMichael Meeks <michael.meeks@collabora.com>
üst 3ebfc5b9
......@@ -47,20 +47,17 @@ SvxOpenCLTabPage::SvxOpenCLTabPage(vcl::Window* pParent, const SfxItemSet& rSet)
{
get(mpUseSwInterpreter, "useswinterpreter");
get(mpUseOpenCL, "useopencl");
get(clUsed,"openclused");
get(mpOclUsed,"openclused");
get(mpOclNotUsed,"openclnotused");
mpUseSwInterpreter->Check(officecfg::Office::Common::Misc::UseSwInterpreter::get());
mpUseOpenCL->Check(maConfig.mbUseOpenCL);
mpUseOpenCL->SetClickHdl(LINK(this, SvxOpenCLTabPage, EnableOpenCLHdl));
cl_device_id idTest=opencl::gpuEnv.mpDevID;
if(!idTest)
{
clUsed->SetText("Yes");
}else{
clUsed->SetText("No");
}
bool bCLUsed = opencl::GPUEnv::isOpenCLEnabled();
mpOclUsed->Show(bCLUsed);
mpOclNotUsed->Show(!bCLUsed);
}
SvxOpenCLTabPage::~SvxOpenCLTabPage()
......
......@@ -34,7 +34,8 @@ private:
VclPtr<CheckBox> mpUseSwInterpreter;
VclPtr<CheckBox> mpUseOpenCL;
VclPtr<FixedText> clUsed;
VclPtr<FixedText> mpOclUsed;
VclPtr<FixedText> mpOclNotUsed;
DECL_STATIC_LINK_TYPED(SvxOpenCLTabPage, EnableOpenCLHdl, Button*, void);
......
......@@ -58,25 +58,22 @@
</packing>
</child>
<child>
<object class="GtkLabel" id="label2">
<property name="visible">True</property>
<object class="GtkLabel" id="openclused">
<property name="visible">False</property>
<property name="can_focus">False</property>
<property name="xalign">0</property>
<property name="label" translatable="yes">Will OpenCL be used?</property>
<attributes>
<attribute name="weight" value="bold"/>
</attributes>
<property name="label" translatable="yes">OpenCL is available for use.</property>
</object>
<packing>
<property name="expand">False</property>
<property name="fill">True</property>
<property name="position">2</property>
<property name="position">3</property>
</packing>
</child>
<child>
<object class="GtkLabel" id="openclused">
<property name="visible">True</property>
<object class="GtkLabel" id="openclnotused">
<property name="visible">False</property>
<property name="can_focus">False</property>
<property name="label" translatable="yes">OpenCL is not used.</property>
</object>
<packing>
<property name="expand">False</property>
......@@ -84,12 +81,6 @@
<property name="position">3</property>
</packing>
</child>
<child>
<placeholder/>
</child>
<child>
<placeholder/>
</child>
</object>
</child>
</object>
......
......@@ -35,7 +35,7 @@ struct KernelEnv
cl_program mpkProgram;
};
struct GPUEnv
struct OPENCL_DLLPUBLIC GPUEnv
{
//share vb in all modules in hb library
cl_platform_id mpPlatformID;
......@@ -48,9 +48,12 @@ struct GPUEnv
bool mnKhrFp64Flag;
bool mnAmdFp64Flag;
cl_uint mnPreferredVectorWidthFloat;
static bool isOpenCLEnabled();
};
extern OPENCL_DLLPUBLIC GPUEnv gpuEnv;
OPENCL_DLLPUBLIC bool generatBinFromKernelSource( cl_program program, const char * clFileName );
OPENCL_DLLPUBLIC bool buildProgramFromBinary(const char* buildOption, GPUEnv* gpuEnv, const char* filename, int idx);
OPENCL_DLLPUBLIC void setKernelEnv( KernelEnv *envInfo );
......
......@@ -865,6 +865,11 @@ const char* errorString(cl_int nError)
#undef CASE
}
bool GPUEnv::isOpenCLEnabled()
{
return gpuEnv.mpDevID;
}
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment