A low level API is always a artificial lock down. It's optimize for a specific hardware. There is no difference to Cuda which only runs on nVidia hardware and a few other processors.
First: I agree with you that it is like CUDA. CUDA is a perfectly excellent tech developed by NV, and is extremely useful.
Second: It's not an
artificial lockdown. You need to use the proper terminology. An "artificial" lockdown means it was not needed. CUDA, for example, is not an artificial lockdown. It target's NV's hardware, because it is meant to target a specific architecture, because that's the fastest way to achieve the most performance out of your hardware and arch. So NV needed to do no such artificial lockdowns to make CUDA non-workable in AMD or Intel tech, artificial lockdowns meaning a GPU Vendor ID check, or a GPU Model ID check to see if it is your own company's model, etc. There's no need for that because, by nature of targeting a specific hardware arch, it will automatically not work (fail spectacularly) on a different class of hardware arch.
The same goes for Mantle. Mantle is locked to GCN, like CUDA is locked to NV's archs that support it, because that's the purpose of Mantle - low level access to the hardware for better performance. AMD doesn't need to provide artificial, arbitrary lockdowns, like GPU Vendor ID checks or such, because it will automatically not work on non-GCN hardware. Imagine Mantle as a wooden board having several physical hooks that expect the wall it will attach to must have holes that line up where the hooks are. GCN has those holes in the right place, so the hooks will fit. Other archs will have holes in different places, or have differently shaped holes, or will not have holes at all - whatever the case, the hooks won't line up to the holes, and your wooden board with the hooks can't attach to the wall. That's the best mental image you could have to imagine why bare metal coding is never transferrable to different archs.
So, no artificial lockdowns. But yes, inherently, it will end up locked to GCN.
Now:
There is a reason why Glide died and why we have higher level Apis. A low level graphics api is bringing us right back to the 90s.
DX and OpenGL won't die. With Mantle, AMD is merely leveraging the good fortune they had in sweeping the consoles. These same devs (console devs) will have access to a Mantle-like API to develop on the GCN units in their specific consoles. GCN is also in desktops (with AMD cards), so why not give them this option too?
But make no mistake, it's just an option, and it might be a beneficial one for dev houses that target several consoles + PC. But no developer in their right mind will ever port exclusively to Mantle. That's just insane, because NV and Intel form a much bigger chunk than AMD in PC gaming marketshare.
So at best, if a few dev houses will opt to use Mantle
in addition to DX/OpenGL in their PC ports, AMD cards might get the occasional bonus performance in a few games. At worst, only a handful will ever use it (selected Gaming Evolved titles), and it will only be a blip in the radar.
What won't happen, for sure, is that Mantle supplants DX. That's crazy talk. So it's not the end of the sane world of PC gaming. If that is your fear, then don't worry. The chances of that are nil.