Conversation
Improved resource releasing
In vcpkg manifest mode, dependencies are installed locally in vcpkg_installed/ Since src/application doesn't have vcpkg.json, we need to point to the main project's vcpkg_installed directory so the third-party build can find the dependencies mainProjectVcpkgInstalled = "$WorkspaceDir/vcpkg_installed"
[CI] Add GitHub Actions CI for Windows and refactoring
fix compile for CUDA 13
* update changelog for v0.10 * project version 0.10.0 in CMakeLists.txt * [doc] update changelog * [doc] markdown fixes * added markdownlint rules
Add scheduled workflow to run every Monday at 8 UTC
…ilding * [debug] adding 3 tiny test images * [debug] write pyramid images after horizontal sweeps --------- Co-authored-by: Carsten Griwodz <griff@ifi.uio.no>
* make planes const in logging * write functions use const planes * add const to memcpyFromDevice and memcpyToHost * missing const method in implementation --------- Co-authored-by: Carsten Griwodz <griff@simula.no> Co-authored-by: Simone Gasparini <simone.gasparini@gmail.com>
…ry octave (#178) * [sift] Remove option to create all octaves directly from the input * [sift] reduce size of GaussTable dd to 1: The other levels of this table existed only for direct downscaling. * update CHANGES * [sift] remove some code that is now dead --------- Co-authored-by: Carsten Griwodz <griff@ifi.uio.no>
Extrema are searched from 3x3x3 blocks of pixels in the DoG pyramid. The dead code could search in interpolated pixels, which never made sense. The code was always #undef'ed.
OpenCV used quite narrow Gaussian filters when PopSift was first written. This computation was adopted for compatibility reasons. The other modes are more accurate.
* Soft failing if someone uses the old parameter --gauss-mode=opencv --------- Co-authored-by: Carsten Griwodz <griff@ifi.uio.no>
* [sift] Remove unreachable code This piece of now unreachable code was a replicating buggy OpenCV behaviour that existed in 2016. Its case was no reachable callable with any valid command line or library parameter. --------- Co-authored-by: Carsten Griwodz <griff@ifi.uio.no>
Hopefully resolves the following build error: ``` Run Build Command(s): D:\downloads\tools\ninja-1.13.2-windows\ninja.exe -v -v -j33 install [1/32] C:\PROGRA~1\NVIDIA~2\CUDA\v13.2\bin\nvcc.exe -forward-unknown-to-host-compiler -Dpopsift_EXPORTS -ID:\b\popsift\src\v0.10.0-4df863d942.clean\src -ID:\b\popsift\x64-windows-dbg\src\generated -ID:\b\popsift\x64-windows-dbg\src\generated\popsift -isystem "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v13.2\include" -isystem "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v13.2\include\cccl" -D_WINDOWS -Xcompiler=" /EHsc" -Xcompiler=" -Zi -Ob0 -Od /RTC1" -std=c++17 -arch=all-major -Xcompiler=-MDd -MD -MT src\CMakeFiles\popsift.dir\popsift\s_filtergrid.cu.obj -MF src\CMakeFiles\popsift.dir\popsift\s_filtergrid.cu.obj.d -x cu -rdc=true -c D:\b\popsift\src\v0.10.0-4df863d942.clean\src\popsift\s_filtergrid.cu -o src\CMakeFiles\popsift.dir\popsift\s_filtergrid.cu.obj -Xcompiler=-Fdsrc\CMakeFiles\popsift.dir\,-FS FAILED: [code=2] src/CMakeFiles/popsift.dir/popsift/s_filtergrid.cu.obj C:\PROGRA~1\NVIDIA~2\CUDA\v13.2\bin\nvcc.exe -forward-unknown-to-host-compiler -Dpopsift_EXPORTS -ID:\b\popsift\src\v0.10.0-4df863d942.clean\src -ID:\b\popsift\x64-windows-dbg\src\generated -ID:\b\popsift\x64-windows-dbg\src\generated\popsift -isystem "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v13.2\include" -isystem "C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v13.2\include\cccl" -D_WINDOWS -Xcompiler=" /EHsc" -Xcompiler=" -Zi -Ob0 -Od /RTC1" -std=c++17 -arch=all-major -Xcompiler=-MDd -MD -MT src\CMakeFiles\popsift.dir\popsift\s_filtergrid.cu.obj -MF src\CMakeFiles\popsift.dir\popsift\s_filtergrid.cu.obj.d -x cu -rdc=true -c D:\b\popsift\src\v0.10.0-4df863d942.clean\src\popsift\s_filtergrid.cu -o src\CMakeFiles\popsift.dir\popsift\s_filtergrid.cu.obj -Xcompiler=-Fdsrc\CMakeFiles\popsift.dir\,-FS C:\PROGRA~1\NVIDIA~2\CUDA\v13.2\include\cccl\cuda/std/__cccl/preprocessor.h(23): fatal error C1189: #error: MSVC/cl.exe with traditional preprocessor is used. This may lead to unexpected compilation errors. Please switch to the standard conforming preprocessor by passing `/Zc:preprocessor` to cl.exe. You can define CCCL_IGNORE_MSVC_TRADITIONAL_PREPROCESSOR_WARNING to suppress this warning. s_filtergrid.cu ``` This change was prepared with assistance from GPT 5.4. Related: microsoft/vcpkg#51210
…ngs. I noticed this while filling out the checklist for #183
Add /Zc:preprocessor for CUDA 13.2 on MSVC.
Fix checklist typo and use a consistent number of spaces around headings.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
closes #15