FIX: Repair Corrupt Opencl.dll in Windows 10

After updating to Windows 10 Update 1511 – better known as the Windows 10 November Update or Threshold 2 – that was rolled out late last year, lots of people started complaining about a file named opencl.dll becoming corrupt. Upon further investigation and a lot of squabbling over Windows 10 forums, it was discovered that this is a pretty widespread problem, even though it might not be a particularly potent one as a corrupt opencl.dll file does not have any adverse effects on your computer or its graphics features.

It was also discovered that this issue only affects Windows 10 users who have NVIDIA GPUs. What happens is that, whenever an NVIDIA GPU user installs or updates NVIDIA drivers for their graphics card, regardless of whether they do it via NVIDIA GeForce or Windows Update, the NVIDIA driver installer automatically overwrites the existing opencl.dll file from Windows with its own, corrupting it as a consequence. Until NVIDIA deploys a fix to resolve this issue, this is going to happen every time you install or update NVIDIA drivers.

Fortunately, you can determine whether or not your computer’s opencl.dll file is corrupt and then repair/replace it to resolve this problem. Even though a corrupt opencl.dll file will not hinder your everyday use of your computer, it is always better to be safe than to be sorry.

How to Determine Whether or Not Your Opencl.dll File is Corrupt

There are a couple of ways you can find out if your computer’s opencl.dll file is corrupt – you can either use the System File Checker (SFC) utility or the Deployment Image Servicing and Management (DISM) utility. Both of these utilities are built-in Windows utilities that are designed to scan for, detect and try to repair integrity violations such as the corruption of system files like the opencl.dll file.

Option 1: Run an SFC Scan and Check Its Log File

To run an SFC scan and then use the results to find out whether or not your computer’s opencl.dll file is corrupt, you need to:

  1. Press the Windows logo key and type Command Prompt. Then in the search results, click on Command Prompt and select Run as Administrator.
    Run Command Prompt as Administrator
  2. In the elevated Command Prompt, type the following and press Enter:
    sfc /scannow
  3. Wait for the scan to be complete – this may take up to 20 minutes.
    2016-03-23_090346
    Run SFC/scannow in Elevated command prompt
  4. As soon as the scan completes, type the following into the elevated Command Prompt and press Enter:

    copy %windir%\logs\cbs\cbs.log "%userprofile%\Desktop\cbs.txt"
  5. This command line, once executed, will create a file named cbs.txt on your Desktop. This is the log file for the SFC scan that you just ran.
  6. Immediately exit the Command Prompt after executing the last command line and then open txt from your Desktop.
  7. Read through the log file, and if you find entries pointing to a corrupt opencl.dll file, then the file is corrupt and will need to be repaired. This is a sample log, from a computer which had the corrupt opencl.dll.

2015-12-13 04:11:37, Info                  CSI    00004a0c Hashes for file member \SystemRoot\WinSxS\wow64_microsoft-windows-r..xwddmdriver-wow64-c_31bf3856ad364e35_10.0.10586.0_none_3dae054b56911c22\opencl.dll do not match actual file [l:10]”opencl.dll” :

Found: {l:32 EbG6RAK4saLIYu69FF29XF3DXk+hFjNQz45caiKP3Ng=} Expected: {l:32 9rnAnuwzPjMQA7sW63oNAVhckspIngsqJXKYSUeQ5Do=}

2015-12-13 04:11:37, Info                  CSI    00004a0d [SR] Cannot repair member file [l:10]”opencl.dll” of microsoft-windows-RemoteFX-clientVM-RemoteFXWDDMDriver-WOW64-C, version 10.0.10586.0, arch Host= amd64 Guest= x86, nonSxS, pkt {l:8 b:31bf3856ad364e35} in the store, hash mismatch

2015-12-13 04:11:37, Info                  CSI    00004a0e@2015/12/13:12:11:37.574 Primitive installers committed for repair

2015-12-13 04:11:37, Info                  CSI    00004a0f Hashes for file member \SystemRoot\WinSxS\wow64_microsoft-windows-r..xwddmdriver-wow64-c_31bf3856ad364e35_10.0.10586.0_none_3dae054b56911c22\opencl.dll do not match actual file [l:10]”opencl.dll” :

Found: {l:32 EbG6RAK4saLIYu69FF29XF3DXk+hFjNQz45caiKP3Ng=} Expected: {l:32 9rnAnuwzPjMQA7sW63oNAVhckspIngsqJXKYSUeQ5Do=}

2015-12-13 04:11:37, Info                  CSI    00004a10 [SR] Cannot repair member file [l:10]”opencl.dll” of microsoft-windows-RemoteFX-clientVM-RemoteFXWDDMDriver-WOW64-C, version 10.0.10586.0, arch Host= amd64 Guest= x86, nonSxS, pkt {l:8 b:31bf3856ad364e35} in the store, hash mismatch

2015-12-13 04:11:37, Info                  CSI    00004a11 [SR] This component was referenced by [l:125]”Microsoft-Windows-RemoteFX-VM-Setup-Package~31bf3856ad364e35~amd64~~10.0.10586.0.RemoteFX clientVM and UMTS files and regkeys”

2015-12-13 04:11:37, Info                  CSI    00004a12 Hashes for file member \??\C:\WINDOWS\SysWOW64\opencl.dll do not match actual file [l:10]”opencl.dll” :

Found: {l:32 EbG6RAK4saLIYu69FF29XF3DXk+hFjNQz45caiKP3Ng=} Expected: {l:32 9rnAnuwzPjMQA7sW63oNAVhckspIngsqJXKYSUeQ5Do=}

2015-12-13 04:11:37, Info                  CSI    00004a13 Hashes for file member \SystemRoot\WinSxS\wow64_microsoft-windows-r..xwddmdriver-wow64-c_31bf3856ad364e35_10.0.10586.0_none_3dae054b56911c22\opencl.dll do not match actual file [l:10]”opencl.dll” :

Found: {l:32 EbG6RAK4saLIYu69FF29XF3DXk+hFjNQz45caiKP3Ng=} Expected: {l:32 9rnAnuwzPjMQA7sW63oNAVhckspIngsqJXKYSUeQ5Do=}

2015-12-13 04:11:37, Info                  CSI    00004a14 [SR] Could not reproject corrupted file [l:23 ml:24]”\??\C:\WINDOWS\SysWOW64″\[l:10]”opencl.dll”; source file in store is also corrupted

Option 2: Run a DISM Scan and Check Its Log File

If you would rather run a DISM scan and use its results to determine whether or not your computer is affected by this issue, you need to:

  1. Press the Windows Logo key + X to open the WinX Menu.
  2. Click on Command Prompt (Admin).
  3. In the elevated Command Prompt, type the following and press Enter:
    DISM /Online /Cleanup-Image /RestoreHealth
  4. Allow the scan to complete. This may take some time, so you should be patient.
    2016-03-23_110739
    Run DISM /Online /Cleanup-Image /RestoreHealth Command
  5. Once the scan is complete, exit the Command Prompt, navigate to the following directory and open the log located in it:
    C:\Windows\Logs\DISM
  6. Note: If this directory does not exist or if access to the DISM.log file is, for some reason, denied, navigate to the following directory and open the CBS.log file instead:
    C:\Windows\Logs\CBS
  7. Read through the log file you opened, and if you find the following in the log file, your computer’s DLL file is indeed corrupt:

(p)        CSI Payload Corrupt                            wow64_microsoft-windows-r..xwddmdriver-wow64-c_31bf3856ad364e35_10.0.10586.0_none_3dae054b56911c22\opencl.dll

Repair failed: Missing replacement payload.

If nothing has worked for you, you should either perform a system restore or reset Windows.

ABOUT THE AUTHOR

Kevin Arrows


Kevin Arrows is a highly experienced and knowledgeable technology specialist with over a decade of industry experience. He holds a Microsoft Certified Technology Specialist (MCTS) certification and has a deep passion for staying up-to-date on the latest tech developments. Kevin has written extensively on a wide range of tech-related topics, showcasing his expertise and knowledge in areas such as software development, cybersecurity, and cloud computing. His contributions to the tech field have been widely recognized and respected by his peers, and he is highly regarded for his ability to explain complex technical concepts in a clear and concise manner.