How to support CPU usage on Windows and Linux #580
Checklist
DescriptionThe program does not work on machines without Vulkan, but it might work if emulated, so it would be very helpful if they added the option to force the use of swiftshader. This can be done by modifying Upscayl's files on Windows and Linux. On the former, it is in C:\Program Files\Upscayl by default. I have tried deleting the vulkan-1.dll library and renaming a copy of vk_swiftshader.dll to vulkan-1.dll, which I put into the C:\Program Files\Upscayl\resources\bin folder. Then, set the GPU ID to 0 or leave it blank and the app works correctly. I have already tried all the models and they work (although slow) even on an Intel Atom N455 with 2gb of ram and Windows 10 π€― So I would consider an option in settings (or automatically) to force CPU usage only for those systems without Vulkan useful... and even if it supports it it can become a quick fix for those with driver issues, etc. π€ Oh, you can also post in the documentation how to convert the app to CPU only by renaming and replacing the libraries as I mentioned before if the option is not useful for you, then at least more people will have access to this great tool ππ You decide π Greetings πβοΈ Oh, by the way, excuse my English, my native language is Spanish π Related Problem(s)The app does not work if the machine does not support Vulkan. Note that, as a workaround, there is still a possibility for this to not work. AlternativesRenaming a copy of the vk_swiftshader.dll library to vulkan-1.dll |
Replies: 22 comments 17 replies
π€― |
|
I think we can add this info to the wiki. |
|
I assume the same can be done on Linux by renaming libvk_swiftshader.so to libvulkan.so.1 . Not sure about Mac. Maybe we should make a separate distribution for such builds? |
|
No, I think it'd be too much work for what's basically a smart hack. I think it'd be better to let hacks stay in the wiki. |
|
Added here: https://github.com/upscayl/upscayl/wiki/Misc |
When I try this on Void Linux using the AppImage version of Upscayl, I get an error: "BACKEND REPORTED: image upscayl: /tmp/.mount_upscay64N2F7/resources/bin/upscayl-bin: symbol lookup error: /tmp/.mount_upscay64N2F7/resources/bin/upscayl-bin: undefined symbol: vkAllocateDescriptorSets" |
|
Sounds like your driver really hates Vulkan. Sorry. |
|
I think a video teaching this would be good. |
|
Hi guys, I did not delete any file just did rename it as you mention in your first post. PS: "do not delete or rename the original vk_swiftshader.dll file, you must do it with a copy of it" = ? Why do you say that? You told us to rename the original vk_swiftshader.dll to vulkan-1.dll. Somehow you statement doesn't match. I just did this... ...so if this was wrong then just tell us again the correctly way etc. Thanks. |
|
It worked, but It is extremely slow. Tested in Arch Linux with Swift Shaders |
|
I have edited the post a little so that it is understood that it must be done with a copy and not with the original vk_swiftshader to avoid confusion. πβοΈ |
|
Upscayl v2.9.9 works on Intel Atom N455 and N550, 2GB Ram and 1GB of pagefile, the procedure is the same, slow with the gui minimized and very slow maximized, I would recommend an option to disable heavy animations in the gui to leave the biggest cpu load to the scaling process, idk, It's just a suggestion, minimized works but having it maximized with just the progress percentage updating every couple of minutes would be great... Btw, I think you should update the readme.md file in the repository, in the current one you suggest a link to the old entry (issue), not to the discussion (that is, this one...), and I think it would be better to link it directly to the discussion since it is the most up-to-date... obviously the notice about the discussion appears but people will be guided first by the previous one before coming to this... Another option would be to update both entries to keep the information the same in both but I think I prefer the first option π |
|
Does not seem to work on linux ubuntu with Upscayl 2.10.0 unfortunately After a really short time I get a success message for upscaling, but no file is created |
|
I think the wiki is a bit misguided. The vulkan file should not reside in the location of Upscayl.exe, but the actual upscaler executable, which is located at: So what this means is you copy: to: and rename it to: |
This comment was marked as off-topic.
This comment was marked as off-topic.
|
This method works for me. But because of going heavy on my CPU now, I found a 'per task cpu limiter' to reduce its demand a little. Now rendering will take a little longer but will safe the CPU from extra heath https://github.com/martin-kudlicka/cpu-limiter. You have to set a rule then to point it then to upscayl-bin.exe on the left and right , and then set the max of %. ( upscayl-bin.exe is only visible in taskmanager during rendering ) |
|
|
|
Got it running on Arch Linux by installing SwiftShader (https://aur.archlinux.org/packages/swiftshader-git) and pointing the export VK_ICD_FILENAMES=/usr/share/vulkan/icd.d/vk_swiftshader_icd.json |
|
get error for me in laptop asus a455l with nvidia geforce 820m : π Resetting image paths anyone can help me? |
|
Good news, at least for Windows users with only CPU. It's much faster than doing the file swap of the original Vulkan SwiftShader files. |
|
Sorry. I don't understand. Not a Linux person.
What is being discussed? What is the value 2048 and 1024?
β¦On Thu, Nov 27, 2025 at 11:02β―PM dima333750 ***@***.***> wrote:
I think less
Here is the result of the transition from 2048 to 1024
Screenshot_9.jpg (view on web)
<https://github.com/user-attachments/assets/e5c773ca-b03d-40c7-ba94-4db242b4e7d9>
β
Reply to this email directly, view it on GitHub
<#580 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BX6JQYLMSTBJDBVTY7UPJLL365DCZAVCNFSM6AAAAAA743VNPOVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTKMBZHEZTOOI>
.
You are receiving this because you commented.Message ID:
***@***.***>
|




I think the wiki is a bit misguided. The vulkan file should not reside in the location of Upscayl.exe, but the actual upscaler executable, which is located at:
So what this means is you copy:
to:
and rename it to:
Verified that this works on the latest release: