Windows installation package size
Maik Qualmann
metzpinguin at gmail.com
Tue Apr 15 21:03:56 BST 2025
Hi Gilles,
We should examine how big the speed difference actually is with CUDA enabled
and without. Whether it even makes sense to enable CUDA in OpenCV.
I don't currently have a Windows machine with NVIDIA available.
Maik
Am Dienstag, 15. April 2025, 21:02:58 Mitteleuropäische Sommerzeit schrieb
Gilles Caulier:
> Hi Maik,
>
> A binary under windows cannot be stripped like under Linux. debug
> symbols are hosted in a separate file .pdb.
>
> So, the NVIDIA dll is huge as well...
>
> There is also the redistributable status of the NVIDIA sdk. The
> response is no, as I can see. So typically we cannot host files in the
> digiKam bundle.
>
> This means that dll must be removed from the installer and the end
> user must install the both packages from NVIDIA on the target computer
> to have the benefit to support OpenCL in digiKAm.
>
> Best
>
> Gilles
> Best
>
> Le mar. 15 avr. 2025 à 18:42, Gilles Caulier
>
> <caulier.gilles at gmail.com> a écrit :
> > Hi,
> >
> > This is the list of dll file sizes from the NVIDIA sdks on the Windows 10
> > VM :
> >
> > CUDA-DNN :
> >
> > ./CUDNN/v9.8/bin/11.8:
> > total 611M
> > drwxr-xr-x 1 gilles 197121 0 Apr 9 18:15 ./
> > drwxr-xr-x 1 gilles 197121 0 Apr 9 18:15 ../
> > -rwxr-xr-x 1 gilles 197121 261K Feb 28 06:09 cudnn64_9.dll*
> >
> > <========
> >
> > -rwxr-xr-x 1 gilles 197121 162M Feb 28 06:09 cudnn_adv64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 3.8M Feb 28 06:09 cudnn_cnn64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 302M Feb 28 06:09
> > cudnn_engines_precompiled64_9.dll* -rwxr-xr-x 1 gilles 197121 23M Feb 28
> > 06:09
> > cudnn_engines_runtime_compiled64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 2.1M Feb 28 06:09 cudnn_graph64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 54M Feb 28 06:09 cudnn_heuristic64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 66M Feb 28 06:09 cudnn_ops64_9.dll*
> >
> > ./CUDNN/v9.8/bin/12.8:
> > total 961M
> > drwxr-xr-x 1 gilles 197121 0 Apr 9 18:15 ./
> > drwxr-xr-x 1 gilles 197121 0 Apr 9 18:15 ../
> > -rwxr-xr-x 1 gilles 197121 260K Feb 28 06:03 cudnn64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 242M Feb 28 06:03 cudnn_adv64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 4.1M Feb 28 06:03 cudnn_cnn64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 524M Feb 28 06:03
> > cudnn_engines_precompiled64_9.dll* -rwxr-xr-x 1 gilles 197121 25M Feb 28
> > 06:03
> > cudnn_engines_runtime_compiled64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 2.2M Feb 28 06:03 cudnn_graph64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 54M Feb 28 06:04 cudnn_heuristic64_9.dll*
> > -rwxr-xr-x 1 gilles 197121 112M Feb 28 06:04 cudnn_ops64_9.dll*
> >
> >
> >
> > CUDA :
> >
> > gilles at Win10 MINGW64 /c/Program Files/NVIDIA GPU Computing Toolkit
> > $ ls -alRh | grep dll
> > -rwxr-xr-x 1 gilles 197121 109M Feb 26 08:51 cublas64_12.dll*
> >
> > <=======
> >
> > -rwxr-xr-x 1 gilles 197121 644M Feb 26 08:51 cublasLt64_12.dll*
> >
> > <=======
> >
> > -rwxr-xr-x 1 gilles 197121 561K Feb 13 12:30 cudart64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 264M Mar 4 00:15 cufft64_11.dll*
> > -rwxr-xr-x 1 gilles 197121 160K Mar 4 00:15 cufftw64_11.dll*
> > -rwxr-xr-x 1 gilles 197121 1.5M Feb 13 12:34 cuinj64_128.dll*
> > -rwxr-xr-x 1 gilles 197121 69M Feb 13 12:48 curand64_10.dll*
> > -rwxr-xr-x 1 gilles 197121 216M Feb 13 15:12 cusolver64_11.dll*
> > -rwxr-xr-x 1 gilles 197121 150M Feb 13 15:12 cusolverMg64_11.dll*
> > -rwxr-xr-x 1 gilles 197121 362M Feb 26 09:17 cusparse64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 288K Feb 13 13:16 nppc64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 20M Feb 13 13:16 nppial64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 7.6M Feb 13 13:16 nppicc64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 12M Feb 13 13:16 nppidei64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 121M Feb 13 13:16 nppif64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 52M Feb 13 13:16 nppig64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 12M Feb 13 13:16 nppim64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 47M Feb 13 13:16 nppist64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 382K Feb 13 13:16 nppisu64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 5.1M Feb 13 13:16 nppitc64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 16M Feb 13 13:16 npps64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 75M Feb 22 06:17 nvJitLink_120_0.dll*
> > -rwxr-xr-x 1 gilles 197121 328K Feb 26 08:51 nvblas64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 830K Feb 13 12:35 nvfatbin_120_0.dll*
> > -rwxr-xr-x 1 gilles 197121 5.9M Feb 13 12:46 nvjpeg64_12.dll*
> > -rwxr-xr-x 1 gilles 197121 6.1M Feb 22 06:13 nvrtc-builtins64_128.dll*
> > -rwxr-xr-x 1 gilles 197121 83M Feb 22 06:13 nvrtc64_120_0.alt.dll*
> > -rwxr-xr-x 1 gilles 197121 83M Feb 22 06:13 nvrtc64_120_0.dll*
> > -rwxr-xr-x 1 gilles 197121 1.1M Feb 22 05:40
> > InterceptorInjectionTarget.dll* -rwxr-xr-x 1 gilles 197121 1.6M Feb 22
> > 05:40 TreeLauncherTargetInjection.dll* -rwxr-xr-x 1 gilles 197121 7.0M
> > Feb 22 05:40 sanitizer-collection.dll* -rwxr-xr-x 1 gilles 197121 1.1M
> > Feb 22 05:40 sanitizer-public.dll* -rwxr-xr-x 1 gilles 197121 900K Feb 22
> > 05:40 InterceptorInjectionTarget.dll* -rwxr-xr-x 1 gilles 197121 1.4M Feb
> > 22 05:40 TreeLauncherTargetInjection.dll* -rwxr-xr-x 1 gilles 197121 455K
> > Feb 13 11:45 checkpoint.dll*
> > -rwxr-xr-x 1 gilles 197121 4.3M Feb 13 11:45 cupti64_2025.1.1.dll*
> > -rwxr-xr-x 1 gilles 197121 21M Feb 13 11:45 nvperf_host.dll*
> > -rwxr-xr-x 1 gilles 197121 2.7M Feb 13 11:45 nvperf_target.dll*
> > -rwxr-xr-x 1 gilles 197121 65K Feb 13 11:45 pcsamplingutil.dll*
> > -rwxr-xr-x 1 gilles 197121 304K Feb 13 16:01 freeglut.dll*
> > -rwxr-xr-x 1 gilles 197121 224K Feb 13 16:01 glew64.dll*
> > -rwxr-xr-x 1 gilles 197121 260K Feb 13 11:17
> > Nvda.Build.CudaTasks.v12.8.dll* -rwxr-xr-x 1 gilles 197121 56K Feb 22
> > 07:04 eclipse_1603.dll*
> > -rwxr-xr-x 1 gilles 197121 51M Feb 22 06:18 nvvm64_40_0.dll*
> >
> > As you can see, there are 2 CUDA-DNN sdk versions (11.8 and 12.8).
> > annotated the 3 files required at run time and embedded in the Windows
> > installer.
> >
> > With objdump, there is no information about symbols (stripped or not).
> >
> > Gilles
> >
> > Le mar. 15 avr. 2025 à 11:38, Gilles Caulier
> >
> > <caulier.gilles at gmail.com> a écrit :
> > > Hi Maik,
> > >
> > > Yes, it's probably a debug version embedded in the installer. I will
> > > double check asap.
> > >
> > > Best
> > >
> > > Gilles
> > >
> > > Le mar. 15 avr. 2025 à 10:48, Maik Qualmann <metzpinguin at gmail.com> a
écrit :
> > > > Hi Gilles, The cublas64_12.dll file belonging to NVIDIA CUDA is over
> > > > 600MB in digiKam. I found it online at just under 100MB. Is it
> > > > possible that it still has its debug symbols?
> > > >
> > > > Maik
> > > >
> > > > Am Di., 15. Apr. 2025 um 09:58 Uhr schrieb Gilles Caulier
<caulier.gilles at gmail.com>:
> > > >> Hi Andrej,
> > > >>
> > > >> This is a good question. Recently (one week ago) i rebuilt all the
> > > >> VCPKG environnement used to build the installers from scratch.
> > > >>
> > > >> I also fixed a serious problem with the OpenCL detection by OpenCV to
> > > >> run the DNN on the GPU (faces workflow, autotags, quality, etc.).
> > > >> This
> > > >> is required to install the "famous" NVIDIA SDKs on the Windows 10 VM.
> > > >>
> > > >> At the end of the installer build, the digiKam scripts parse
> > > >> recursively the dependencies, including now, the NVIDIA stuff of
> > > >> course. So, I suspect that the NVIDIA SDKs are the source of the
> > > >> problem.
> > > >>
> > > >> Tips: install 8.6.0 and scan the installed files list/size. Do the
> > > >> same with 8.7.0 and compare. You will quickly find a first response.
> > > >>
> > > >> Best
> > > >> Gilles Caulier
> > > >>
> > > >> Le mar. 15 avr. 2025 à 09:33, Andrej Valencic
> > > >>
> > > >> <andrej.valencic at zoho.com> a écrit :
> > > >> > Hello,
> > > >> >
> > > >> > Just wondering why is the size of the latest pre-release version
> > > >> > (8.7)
> > > >> > for Windows so much bigger then the current release version (8.6) -
> > > >> > 618MB versus 205MB?
> > > >> > This is for the normal exe version of the installer not the debug
> > > >> > one.
> > > >> >
> > > >> > Regards,
> > > >> > Andrej
More information about the Digikam-users
mailing list