NEXUS Only for windows ? WHY not for linux ?

I have a hard time understanding why is the New tool NEXUS Only for windows ? Given the importance of Linux in HPC market, it would make sense to make an ECLIPSE compatible version or maybe somehow make a stand alone version of NEXUS for linux…

I know about cuda-gdb but nexus offers more wide range of capapbilities and its much easier to use (I hope) …


At the GPU developer conference, the NEXUS session had the developer apologizing that this was windows-only because it tied into Visual Studio’s plugin extension system, but Linux GDB support was certainly not ending in any way.

He also asked for an opinion of a possible feature… allowing remote debugging of Linux GPU apps (from Nexus on a Windows host). He wanted to know if that would be useful or not.

I understand his point… I last used Eclipse about a year ago, and it didn’t feel as if it could handle such a complex extension like Nexus. Is that still true?
GDB works and is an old friend, but it’s also a different UI, mindset, and even design than an integrated envionment like VS or XCode or even Eclipse.

+1 to have something alike on Linux and Mac too; very disappointing if that kind of tool remains Windows-only.

EDIT: As people are kind of voting for the type of the integration - I’m more for stand-alone program, something like CUDA Visual Profiler extended, with debugging support included (maybe even Kdbg code could be utilized for debugger integration). Of course, an Emacs extension would do much better, but I guess chances are small for something alike :)

+1 Asking for this DEFINITELY to be done in Eclipse on Linux. Introducing a Windows box into the workflow is not the right way to go for anyone developing a Linux-based GPU app. Eclipse is a critical piece of development environment outside of Windows environments, and needs to be supported.

TotalView had a session at the GTC. It was basically a disappointing half-hour saying that they are “working on it”.

But hey, they are working on it so it will be done eventually. So TotalView (and their competitor DDT) are likely to be NEXUS alternatives on linux.

BIG NO from me for remote access , hampers stream line application development, complicates your program setup + its a cheap way to solve the problem

as for SPWorley question, am not a hardcore ECLIPSE user (I use eclipse and gedit-self-modified ) but eclipse has evolved a lot and can handle such extensions with minor modifications. Its one of the best ide out there in-spite the fact its free…

Hmm hopefully the total view product will be free of cost…

still I feel like this move of nvidia… was to target windows user not familar with gdb. But they should not get windows specific it will hurt in long run ( we all know how Microsoft plays the game ). We all could befit from a debugging tool like nexus, but am not shifting to VS just for that… its like bloatware ;) (personal opinion)

I am thinking this might have something to do with nvidia’s big picture.

After all HPC market is small. If Nvidia’s vision is one GPU for every PC/desktop-supercomputer,

then it has to be running windows and the Nexus move would make a lot of sense

I don’t follow that reasoning - if user base is going to be mostly Windows (which I doubt, BTW), what this has to do if the developers base is mostly Unix? Users won’t need to run Nexus after all. Also - I don’t know about other people’s experiences, but I found CUDA code to be very portable - I was regularly developing on Linux only, and have my code deployed, by other people, on Windows, and working without any issues.


This is a little off topic but do any of you guys know if there is any issue with XP support?

I read

“The NVIDIA Nexus supports Windows 7 and Windows Vista operating systems and full integration within Visual Studio (2008 SP1 standard edition or later).”

So no support for xp ? If no, I guess we will have to get win7 at work. What a pity it would be… :P

If that’s the case THEN I AM DEAD sure Microsoft is involved somehow ;) … but yeah it would even more sad… for people who don’t want to shift to newer windows.

But I guess it should support… I dont see a reason why would it not…

At GTC, the Nexus engineers said that it was Vista/7 only. They were unhappy about it, but it was a Microsoft issue where the remote protocols are only supported in the Vista/7 driver model.

I remembered thinking at the time that MS was evil… its WDDM model makes multi-GPU so difficult (and impossible in some cases) yet they force you to use it for new features you might want.

The only sad thing about this is the poor software engineering choices made by nVidia for their debugging framework. I realize NV isn’t a software company, but this really does show plain and simply ignorance combined with poor software engineering on their part… to lock down their debugging framework to a single driver model.

I realise VS integration is windows only, but the fact their debugging framework in general appears to be - wow… instant loss of respect if this is, and continues to be the case.

As for integration into other IDEs, I think that’s somewhat irrelevant - nVidia should really only be developing a single debugging API (to handle device debugging control & symbol lookup/enumeration), which third parties can use to integrate into whatever products they wish.

Edit: I made this sound far more abysmal than it likely is. I can’t think of a single reason as to why their device debugging capabilities would be OS-specific, so it’s probably just poor marketing and lack of development transparency that’s making things look FAR worse than they really are…

But that’s to be expected with corporate companies I guess, transparency often leads to expectations, and when they can’t be met - stock goes down… sales opportunities are lost… people lose jobs…

It’s currently Vista/Win7 only. Will it continue to be that way? I actually don’t know, probably depends on the demand. Not sure why having to upgrade an eight-year-old OS is such a huge problem, though. The debugging framework is the same as cuda-gdb, it’s just there are a lot of driver hooks that are driver-model specific. I assume they just had to make a choice early in development whether to focus on XP or move to Vista/Win7 for the first releases. Considering the age of XP and its lack of D3D10, I don’t think they made some sort of indefensible choice.

Will it eventually support Eclipse? At the moment I hope not–considering how few people I know that use Eclipse for CUDA (or even C) development, there are definitely better places where those resources could be invested. (none of the devtechs use it for CUDA or OCL, nobody on the driver team uses it, nobody on the cuda-gdb team uses it)

Also, debugging API for third party tools vendors–funny you should mention that.

PS–I guess nobody was at that talk where I demo’d some new stuff for Windows that solves problems everyone keeps complaining about. Oh well :)

I’m assuming you mean the nexus client/server are currently Vista/Win7 only… but then you say they’re using the same debugging framework as cuda-gdb, this somewhat implies the framework isn’t WDDM specific at all, just some specific features Nexus is using (presumably for remote debugging?) are… Which makes things sound a lot more promising :)

Also great to see work on debugging APIs is being done :D Although I suspect this might not trickle down into an end-user API available to everyone, but rather something requiring NDAs, marketing ties, and the likes - maybe not even via nVidia, but via Allinea? Not that it stops anyone serious from accessing it - I just personally suspect various FOSS projects (eg: MonoDevelop / Eclipse / NetBeans) may have issues accessing it in that case. (which isn’t really your concern I guess)

How many big corporations do you know of, that have switched to Vista/7 ?

For me personally, I think a switch to 7 is at least 2 years away for our company.

Our organization still forbids the use of Vista. (Fortunately, this doesn’t really affect me, as our team is all Mac/Linux.)

My Fellow colleagues in our lab and other labs around… campus still use XP or MAC or Linux…

Yeah, Vista is verboten in my neck of the woods too.

I have to disagree here. While I see that its actually not to much benefit to use Eclipse for pure CUDA programs, I feel it makes things much more comfortable when working with large c++ object-oriented Projects which use CUDA code as well. I.e. I am working on porting the compute intense parts of a 200k line C++ code to CUDA. Basically I derive objects from the already existing ones, where I add the necessary setup stuff for CUDA and call external C routines (CUDA) for the compute intense stuff. So far me and a colleague we have rewritten roughly 150 functions spread over 15 Classes.

Sure I could do that as well with an editor like kate or emacs and using the console for debugging. But in my point of view its much more comfortable to use eclipse. I mean in the end you support Visual Studio since it is a good IDE in windows. So I sure would like to see Eclipse support since that is one of the best (if not even the best) IDE on UNIX. On the other hand I guess the problem will solve itself in time, since someone will probably write the necessary extension for eclipse - afterall C++ support in eclipse is only an extension in itself.

edit: Btw. with the upcoming full c++ support in CUDA a good IDE support gets more important in my opinion.

best regards



pah, forget this crap at all!


is a NEXUS vim plugin intended?