Linux support

I think we mostyl agree :slight_smile:
I just differentiate between my personal viewpoint and what I see “out in the field” when I do service for “normal users” and try to gather as much obejctive user experience as possible…

It often comes down to a very personal set of “which compromise am I willing to go for” and “which shortcoming do I personally feel important or not”…

Of course there are many examples where linux is way easier to work with or is able to detect and use hardware which is long abandondend in the windows world - or where driver support because of a very strong community is much better than in cases where a manufacturer doesn´t exist anymore or doesn´t want to put any effort into support for an older product.

When I put some old healdess Kepler GPUs in a Linux machine - all I have to do is swithc to the proprietary driver and its fully supported out of the box, rendering everyhting on the bigger headless GPU, outputting it on my smaller GPU attached to the screen. Doing the same in Windows often involves registry tweaks, driver hacks etc…

And - as I already said - in many cases, it still works right out of the box. I fully aknowledge that a lot of what people say about Linux is simply based on prejudices and in many cases plain wrong or long obselete.

But if I go to a customer, lets say a dentist… And they want to implement the security thingy (a fixed VPN in this case) presented from the medical association which they have to use by law - the desktop Software they use for it is a windows software. The software they use to model the 3D-models for the teeth implants is a windows driven solution. The calender/Calender/etc… are all windows based front ends on windows machines… Of course, I could get everything somehow to run into a Linuix environment - but as soon as I need the support of any of these companies, no one has a clue on how to deal with that indivdually tweaked system anymore… It doesn`t matter that in theory this all could be done in Linux and probably would work better here and there - no one cares - it simply has to work, time is money and the company offering the one solution you need to buy simply does it on windows…

Or: my neighbour who is no PC affiliate / technical person… wants to go for a new Laptop, wants to integrate his heart beat monitor smartwatch, watch netflix, connect his new Gameconsole, etc… (all made up examples, but you get the point) and has trouble doing “small things” - he can ask his son, his other neighbour, call the support, etc… and chances that he will get it running are - statistically speaking - higher if he is in windows. not because linux can´t do it in general, but because there are far more poeple and companies “knwoing windows”…

Or: I go to an old friend with a creative studio, who did a lot of print and still does - he doesn´t care if ot COULD be possible to do it in Linux - he buys a whole machine from the companie offering the Linotpye support for his print-on-demand center machine he bought for 2 million bucks - and this machine is based on windows - he doesn´t care whats under the hood, he pays 2000 bucks a month for a service contract - and the machine that comes with the whole soultion is a windows one… So he uses that, the support he calls knows that - and as soon as he or me tamperes with it, he gets no more support. So he rather lives with the fact that 3 functions are buggy (that would work in linux flawlseewlee), rather than changing anything and having no support any more…

I am fully aware that there are countless examples of “Linux could do the same or even better” - but decision often are based on a totally different gorund of arguments than the technical basis we are covering here. Around 10 years ago, many cities in europe started to switch to linux in order to get rid of contracts, open up the systems, make them exchangeable (city 1 develops solution, city 2 takes it for free), etc… I loved it… the idea was great and "somebody has to start (chicken / egg) "
10 years later, the governement changed and the new people in charge where close minded enough while also being close enough to microsoft representatives who tolled them that “all the problems they have would be gone when they switched back to windows”… So … they tossed everything out again - and bought everything new - from Microsoft… Personally, I think this was a desaster and I certainly would have made myself the advocate for the linux solution IF I were in charge…
But I also realise that the market/people/companies simply “work” like this - and the reasons why someone takes a certain route in decision- making is often suboptimal from one viewpoint and good from another…

And after decades of dealing with all kinds of implementations, solutions, service, etc… I just see the point that “doing a linux version” of a piece of software still is not something that is profitable when talking about desktop software… Most decision makers simply don´t care if linux could also do it or even better - the MAC or windows solution is good enough, everyone knows it - so just buy this… (beleive me, I spend my years trying to argue the other way and try to change peoples minds…)

1 Like

I get your point and I agree. VEAI has far less features to create something or be creative than Photoshop.

my point was: If you would build a software catalog and have, lets say an audio workstation software. This would end up in “creative software”, subsection “audio”… Now you have different plugins for, lets say Wavelab… One plugin is a simple channel mapper than easily can deal with 100 tracks on an old Core 2 Dip. The other is a modern convolution reverb plugin that runs on a GPU and needs as much power as one can provide… Both are far away from the vast amount of the feature set compared to the main program, not really a lot of creativity going on there. Would you put the first one in the same category as wavelab and seperate the second one into another category “gpu intensive, computational heavy”?

I see your point of cloud-computing and using GPU instances for VEAI… For occasional users with no experience with Colab, Jupyter notebooks, etc its way to complicated to get something like this running and has too many shortcomings for the general user. For smaller projects, it can be a solution - but imagine doing a longer movie in 1080p->4K - you would need to transfer several hunderds of GB over the internet… While I know of enough people who are capable of getting this to work and have affordable access to this kind of bandwith - the general user doesn’t…
And if one wanted to use it on a regular basis for bigger projects - it simply is cheaper to get a lokal GPU and do it on the desktop.

A good example of a user and usecase where Linux shines. No argument there, I am fully with you. I am not arguying against your point of view which works perfect for you. I am simply lloking at the big picture and the average “topaz” user - what does he/she know, own, is capable of, wants to spend…

Again - personally, I´d love to see a Linux version. But I can fully understand that for a Company like Topaz there needs to be a good reason (=enough paying customers for a Linux version) to invest in that route.

You are correct. in a perfect world, where everything that is possible is doable and where evryhting and everyone is doing everything the best possible way thinkable, it could all be done… Its the same discussion on why cars still need so much dieseln per km instead of having way more efficient engines that could also run on organic oils, synthetic fuels, etc… Its not that its not possible :slight_smile:

We could go on forever… Bottom line is:

There are a lot of good reasons for a Linux versions. And a lot of people (me included) would like to see one.

But ultimately it is more effort to be put in which has to pay off for Topaz. It has to pay the bills. And the decision is up to Topaz - we are gathering requests.

And for the moment - demand doesn´t seem to be high enough… Might change over time (fingers crossed)…

Topaz is aware that there is demand - and maybe someday they will decide to offer a Linux version.

Can confirm it runs very well under WINE for CPU or Intel HD graphics only. In my experience it crashes immediately when trying to run on NVIDIA hardware. I don’t have AMD to test.

It might be worth exploring Linux support via WINE - if all they need to do is get it hooked into the native NVIDIA or AMD drivers, that would be a lot easier than having to code a native app. They could make it super easy and package it together with WINE as a flatpak or snap.

I don’t care if there’s a Linux NATIVE version as long as it RUNS on Linux. A supported WINE-based flatpak or snap would be an easy way to make this happen while reducing overhead and ensuring cross-distribution compatibility.

My WINE experience wasn’t very good. A bunch of the UI didn’t render correctly. That is why I switched to VMWare.

Not having access to the GPU is a killer though. Via VMWare my framerate is ~6x slower than with a minimal GPU. Pretty disappointing.

If you want to run VEAI on a VM, use QEMU/KVM. You can find guide’s to use GPU passthrough with VFIO. You need a GPU you can sacrifice to the VM, there’s no performance hit for this the WIndows VM will have hardware access to the GPU.

I’ll have to try running VEAI on WINE. I’ve never been a huge fan of running WINE but I’ve been sold on Steam Proton for the past couple years so I’m sure it could probably do it well if it were setup right.

+1 for linux support.

I have been using Topaz Gigapixel for a while on Linux and just recently picked up Video Enhance too. Having gone through all the headache and troubleshooting I’ll post a quick how to for getting both working in a few steps. Also fwiw I have an Nvidia gpu, although I believe the programs only use the cpu on Linux.

  1. Download Bottles: GitHub - bottlesdevs/Bottles: Run Windows software and games on Linux
    • No need to mess with WINE or even have it installed.
  2. Create a (software) bottle and give it a name.
  3. Under the dependencies tab of that bottle install vcredist2019.
  4. Click “Run executable” from main tab and point it to the Topaz installer.
  5. Let it install and that’s it. Run the program from the newly created shortcut in the main tab.

I have both Gigapixel and Video Enhance installed and both work well (sans the gpu). Hope this helps someone.

3 Likes

Thanks for sharing, I will have to try this out sometime! =)

Though I’ve been running VEAI on a VM, I figured I’d try it and another GPU heavy windows program in Wine.

I got VEAI running in wine and as stated above, it’s not using the Nvidia GPUs, it doesn’t say that it switched to CPU, but I know from running it on the VM, and watching nvtop that it is running on the CPU. which is odd because VEAI sees both of my GPUs. Gonna work on seeing if I can get it running on GPU in the next couple days. Other than being slow, it does work fine on the CPU

The other program I was working on uses CUDA and that I can get running on both GPUs @ 100% each so I know it’s possible.

And to add to that, while it would be great to get a Linux version of these apps, I won’t hold my breath. A viable middle ground might just be just getting them to work well in WINE. We’re 75% of the way there already, we just need to figure out why despite seeing the video card the apps are still using the cpu.

I have another system, an AMD 5800x/AMD 5700xt, so to rule out the Nvidia/AMD thing I installed VEAI on that with WINE and got exactly the same results, it only renders on the CPU but it does see the GPU and allows it to be selected.

This was brought up before https://community.topazlabs.com/t/linux-support/16340/6
Someone says they had all the Topaz stuff running on the GPU but I tried what they said and nothing on either system.

I’ve been using WINE the past couple of days and yeah I’d be fine if we could just get VEAI running on GPUs in WINE. I’d really like to ditch the Windows VM.

Interesting I’ll look into ​the suggestions from that thread. From doing a cursory glance at the logs, my assumption is the gpu failure is due to this error:

[Error ] Thread: 0x73f13e0 < line #: 0> ONNX problem: DML Init D:\a_work\1\s\onnxruntime\core\providers\dml\dml_provider_factory.cc(136)\onnxruntime.dll!00000000057D7BFE: (caller: 00000000057D7C97) Exception(18) tid(f8) 80004001 Not implemented.

ONNX Runtime is a machine learning acceleration runtime used by Microsoft’s DirectML which I believe is tied to DirectX 12 – which to my knowledge is not supported by WINE.

My guess is this ONNX Runtime framework is for gpu acceleration and fails to load subsequently causing a failure to load:
alqs-v2-fgnet-fp32-384x480-2x-ox.tz
it then seems to fall back to OpenVINO which I assume is for cpu:
alqs-v2-fgnet-fp16-576x672-2x-ov.tz

These are just assumptions so please take with a grain of salt.

A onnxruntime.dll is packaged with Topaz products (at least Video Enhance) but that doesn’t seem to matter. I tried copying all the onnxruntime.dll’s from my Windows install to the corrosponding locations (system32/syswow64/winsxs) in my WINE prefix but that didn’t help. I’ll continue to look into this when I have time. That’s all I have for now.

exactly.

Getting VEAI with GPU Support running inside a VM is possible, but thats a different story than having a linux version.

That’s good work. DX12 is supported by VKD3D in WINE, ONNX is open source and cross platform. DirectML is still listed as “ToDo” in VKD3D so I don’t know that any of that would work.

I don’t know enough about the whole thing to be able to figure any of that out, hopefully you do lol

After I get a dummy GPU for the host I was going to try exactly this, any tips/pitfalls? Glad to see someone else has tried the crazy idea I’ve been thinking about

Well it sounds like you want to run a VM if you “need a dummy GPU for the host”. That’s not what we’re talking about here, but you can do that, I’ve done it for over a year but you have to use QEMU

welcome nicholas :slight_smile:

Sounds like you want to passthrough your GPU into a virtual machine - head over to the proxmox/unraid forums, these guys do it all the time. You might also want to take a look at the beer drinking guy on youtube and his cloud gaming servers :slight_smile: lots of tips on his channel about gpi virtualization, partitioning, etc…

this thread is about linux support, though, not running a VM inside linux to host a windows guest…

nope, directML is not working in Wine at the moment… Fingers crossed :slight_smile:

Would be nice since Windows has become a nightmare of blue-screens. VEAI is the only thing that has required my dual-boot setup… When Windows actually decides to work.

you’re still under windows 98 SE ? XP ? Win7 ? it’s a long time that the blue screen is not an issue anymore.I didn’t had one since many many years.

if you have BSOD, it’s maybe / certainly not related to Windows or VEAI, more related to your computer / gear. if you use a dual boot screen to avoid BSOD on windows, i’ll suggest to check your machine or how you use it.
if you have one because you like Linux, OSX or an another system, then, it’s an another story.

that’s why I would suggest a possible issue with hardware.
it’s not because linux has “no issue” or “the same” that it means it’s a windows problem.

Look at my system : for healt issue, i can’t have my computer close to me. so EVERYTHING is behind 10 meters of extendedcable, HDMI cable (10 meters), USB 2.0 Extender (10 meters) + Hub, USB 3.0/2.0 Extender etc…

  • it’s a m-Itx machine, H270 + i7-7700 with a 600w seasonic 14 years old power supply, 1050ti fanless (!!) palit card (i have to lower the T° Limit of it). I’m under Windows 11 x64.

  • behind usb 2.0 extender + Hub : Laser printer, 2 Midi keyboards plugged, 6 x Steinberg Midi CMC controlers (no more drivers since 2014, still work !), Wacom tablet used as mouse (touch), counter design Jog, a PS2 gamepad controller (using a usb converter but not issue with a Xbox360 controller as well, ). Lifecam webcam. everything is behind a Hub (with its own power supply !)

  • a real Piano (Midi system) + PC keyboard plugged on their own usb Extender (no Hub).

Directly plugged on the motherboard : USB TV Tuner + Steinberg Soundcard + Printer + a usb 3.0 Hub with a 1 Tb SSD plugged on it (using a usb 3.0 2.5" case).

  • Video card output a 1080p Hdmi signal to a 24" monitor through a 10 meter cable… 32 Gb of G.Skill Ram. and soon it will have to send a 4K signal to a second monitor.

last time i got a blue screen was when one of the Ram stick stopped to work, or when one of my 3.5" hard disc died. (now, i only use SSDs, no more 3.5" HD).

I don’t tell windows is perfect, i’m not talking about software crash !! i’m talking about BSOD ! but most of the time, BSOD are related to hardware / issues. I spent 20 years to build my own machines or repair others which had “BOSD” or “issue”.
yes, before it was a nightmare, Win 95, NT (much better !), 98SE (the most horrible of them all), Xp, Vista 1st version was horrible but it was fixed with the SP2 which leaded to Win7, 8, 8.1, win10 and Win11.

i don’t have real big issue since 7 or 8.