1. Welcome to TechPowerUp Forums, Guest! Please check out our forum guidelines for info related to our community.

NVIDIA Opens Up CUDA Platform by Releasing Compiler Source Code

Discussion in 'News' started by Cristian_25H, Dec 14, 2011.

  1. Cristian_25H

    Cristian_25H News Poster

    Joined:
    Dec 6, 2011
    Messages:
    4,195 (4.42/day)
    Thanks Received:
    1,131
    Location:
    Still on the East Side
    NVIDIA today announced that it will provide the source code for the new NVIDIA CUDA LLVM-based compiler to academic researchers and software-tool vendors, enabling them to more easily add GPU support for more programming languages and support CUDA applications on alternative processor architectures.

    LLVM is a widely-used open source compiler infrastructure with a modular design that makes it easy to add support for new programming languages and processor architectures. It is used for a range of programming requirements by many leading companies, including Adobe, Apple, Cray, Electronic Arts, and others.

    [​IMG]

    The new LLVM-based CUDA compiler, which is enhanced with architecture support for NVIDIA's parallel GPUs, is included in the latest release of the CUDA Toolkit (v4.1), now available to the public.

    "Opening up the CUDA platform is a significant step," said Sudhakar Yalamanchili, professor at Georgia Institute of Technology and lead of the Ocelot project, which maps software written in CUDA C to different processor architectures. "The future of computing is heterogeneous, and the CUDA programming model provides a powerful way to maximize performance on many different types of processors, including AMD GPUs and Intel x86 CPUs."

    Enabling alternative approaches to programming heterogeneous parallel systems for domain-specific problems and future programming models will help accelerate the path to exascale computing. By releasing the source code to the CUDA compiler and internal representation (IR) format, NVIDIA is enabling researchers with more flexibility to map the CUDA programming model to other architectures, and furthering development of next-generation higher performance computing platforms.

    Software tools vendors can also access compiler source code technology to build custom solutions.

    "This initiative enables PGI to create native CUDA Fortran and OpenACC compilers that leverage the same device-level optimization technology used by NVIDIA CUDA C/C++," said Doug Miles, director of The Portland Group. "It will enable seamless debugging and profiling using existing tools, and allow PGI to focus on higher-level optimizations and language features."

    Early access to the CUDA compiler source code is available for qualified academic researchers and software tools developers by registering here.

    To learn more about the NVIDIA CUDA programming environment, visit the CUDA web site.
    1c3d0g and DragonBorn say thanks.
  2. RejZoR

    RejZoR

    Joined:
    Oct 2, 2004
    Messages:
    4,425 (1.24/day)
    Thanks Received:
    872
    Location:
    Europe/Slovenia
    Does this mean PhysX on Radeon cards alone? If yes, well, YES please! Though i see it a bit unlikely to happen by AMD, only if someone codes it themself.
  3. John Doe Guest

    PhysX is a proptietery, nVidia only standart. It has a driver level lock to work on/with nVidia boards only. You can't just "code it yourself", there're laws that restrict it.
  4. RejZoR

    RejZoR

    Joined:
    Oct 2, 2004
    Messages:
    4,425 (1.24/day)
    Thanks Received:
    872
    Location:
    Europe/Slovenia
    PhysX works through CUDA. Bypassing the hardlock in drivers is just an inconvenience imo. It was harder to reverse engineer the CUDA itself...
  5. John Doe Guest

    So? Point being...? You can not code PhysX to run on AMD hardware in any legitimate way. It's protected by law.
  6. theJesus

    theJesus

    Joined:
    Jul 20, 2008
    Messages:
    3,962 (1.81/day)
    Thanks Received:
    858
    Location:
    Ohio
    The keyword here is "legitimate".
    hellrazor says thanks.
  7. HumanSmoke

    HumanSmoke

    Joined:
    Sep 7, 2011
    Messages:
    1,191 (1.15/day)
    Thanks Received:
    360
    Howdy, you must be the new sheriff in these here parts?

    IMO makes more sense to offer PhysX to Radeon users but still keep the PPU a GeForce product- Win/Win. Presently, I'm sure a number of AMD/ATi users would love to use PhysX and pick up cheapie GTX460 (or similar), whilst still retaining their HDwhatever as primary graphics- seems like a no brainer.
    My secondary rig (Q9400/P45) uses the SLI hack...another case of Nvidia limiting it's own opportunities. Might make sense for Nvidia to keep it proprietry when they still produced mobo chipsets...now? Not so much. Personally I'd allow SLI free on all and any board that could support dual cards to maximize sales potential...but maybe I'm simple, who knows?
  8. John Doe Guest

    Uhm, yeah? nVidia bought out Ageia to own their tech. Nobody else can render it on their GPU unless they're looking to buy nVidia... :D

    It's not me who puts out these blocks, it's nVidia. Period. Send a support ticket to them to explain this, see if they care.
  9. theJesus

    theJesus

    Joined:
    Jul 20, 2008
    Messages:
    3,962 (1.81/day)
    Thanks Received:
    858
    Location:
    Ohio
    I'm not saying I have any idea what would be involved or how difficult it would be or that I even think it's feasible, but legitimacy has never stopped hackers before. Nobody said it had to be official. ;)
  10. John Doe Guest

    In order to run PhysX "on" AMD hardware itself, you need the technology, which is under the property of nVidia. For that, you need to buy it from them.

    An "inofficial" hack is going to be public once made, and obviously they'll be one of the first to know about it. It's a non-possibility.
  11. xenocide

    xenocide

    Joined:
    Mar 24, 2011
    Messages:
    2,124 (1.76/day)
    Thanks Received:
    458
    If they could reverse engineer and get it to work when it was locked down, they will get it to work easier, and better, now that the platform is open source.

    Are you new to the internet? All sorts of shit that's illegal is available, this is no exception. AMD has the technology to run that shit, but Nvidia controls the patents to it. So rather than pay licensing fees (assuming Nvidia even offered them) AMD chooses to just ignore PhysX since it only applies to like 5% of games released anyway.
    theJesus says thanks.
  12. John Doe Guest

    Look, PhysX isn't the exact same thing as CUDA. It does work through it, but it's LOCKED to nVidia. There's no way to run it on AMD unless you're going to break laws.

    "PhysX" is under the registery of nVidia. It's owned by them and can't be re-applied.

    You're acting no different than a stupid AMD fanboy.
  13. theJesus

    theJesus

    Joined:
    Jul 20, 2008
    Messages:
    3,962 (1.81/day)
    Thanks Received:
    858
    Location:
    Ohio
    K. It gets released, people download it, nvidia gets it pulled from original servers, and people who downloaded it just share it over P2P.

    edit: And I hope you don't call me an AMD fanboy too, because I don't even really like them :laugh:
  14. John Doe Guest

    The driver level block isn't protected by laws. It's just a simple line of code. You can break it. PhysX however IS protected by a law. In order to run it on a non-nVidia GPU, you have to pay nVidia. End of story.
  15. theJesus

    theJesus

    Joined:
    Jul 20, 2008
    Messages:
    3,962 (1.81/day)
    Thanks Received:
    858
    Location:
    Ohio
    Hey, I already stated I had no clue about what was actually necessary. All I was arguing was that the "legitimacy" of any potential hacks or whatever is irrelevant.
  16. HumanSmoke

    HumanSmoke

    Joined:
    Sep 7, 2011
    Messages:
    1,191 (1.15/day)
    Thanks Received:
    360
    Nvidia's stance has been (I think) that 1. It's an Nvidia bought-and-paid-for tech, 2. JHH is a stubborn mule, and 3. Nvidia couldn't make PhysX workable with AMD unless they both *shockhorror* collaborated to ensure compatibility every time the PhysX engine is updated
    True enough. It would also make sense to offer PhysX to AMD card owners if Nvidia got something out of the deal (i.e. the use of an Nv card for PhysX processing). Realistically, an AMD card owner isn't going to jump ship to Nvidia based on some eye-candy in a few games...and if they are staying AMD, why not make a low/mainstream sale to those people who prefer an AMD primary GPU? Certainly makes more sense than locking half the gamers out of the tech. Sales + gaming goodwill. Having PhysX available to both AMD and Nvidia users would also likely help it become more widespread I would think.


    In the greater scheme of things, I think Nvidia opening up CUDA is just Nvidia covering it's bases. They probably see that OpenCL (Nvidia are part of the Khronos group) will gain traction over time, and that CUDA ports to OpenCL without too much difficulty. Most Dev's would likely know the same, so it looks as though Nvidia looks to widen CUDA uptake while still playing the "open source" cards.
    Last edited: Dec 14, 2011
  17. xenocide

    xenocide

    Joined:
    Mar 24, 2011
    Messages:
    2,124 (1.76/day)
    Thanks Received:
    458
    I think you're missing the point. Nobody is claiming it means AMD can market or develop products that use PhysX, people are debating whether or not it can be cracked and programed to run natively on their cards. Currently it basically offloads the PhsyX processing to the CPU when it detects an AMD card and forces it to use some super awful Instruction Set from the early 2000's rather than a streamlined one.

    All people are interested in is whether or not this will make a hack possible that improves performance in PhysX-powered games when using AMD cards. Which it more than likely will since people won't have to spend tons of time on trial and error with reverse engineering.

    Not sure what prompted that considering you could not be any more wrong.
    theJesus says thanks.
  18. John Doe Guest

    And how exactly are you expecting that to happen since AMD doesn't use CUDA? They use a VLIW architecture that renders differently per-shader.

    You could not be more wrong, not me.
  19. xenocide

    xenocide

    Joined:
    Mar 24, 2011
    Messages:
    2,124 (1.76/day)
    Thanks Received:
    458
    Because with the platform it runs on openned they can find out exactly how everything works, then mix and match how it works with the way AMD GPU's function. Not exactly a complicated concept. People already have made various exploits that get PhysX running (poorly) on AMD platforms, so it's not completely impossible. They just waster hundreds of hours trying to find ways to get it to work since everything is locked down.
  20. ViperXTR

    ViperXTR

    Joined:
    Jan 31, 2011
    Messages:
    1,394 (1.11/day)
    Thanks Received:
    407
    PhysX on SSE (particularly AVX) hmmm...
  21. W1zzard

    W1zzard Administrator Staff Member

    Joined:
    May 14, 2004
    Messages:
    14,632 (3.94/day)
    Thanks Received:
    11,361
    this is not a general public release, don't expect anything to come out of it.

    if you use CUDA to simulate your weapons of mass destructions you can now build your own processor (ASIC) and port CUDA to work with it, so you can simulate more and better
    theJesus, xenocide and 1c3d0g say thanks.

Currently Active Users Viewing This Thread: 1 (0 members and 1 guest)

Share This Page