So, what kind of options can you pass to nvFatbinCreate()?

Beginning with CUDA 12.4, we have libnvfatbin for writing fatbin files. You start this out with nvFatbinCreate():

nvFatbinResult nvFatbinCreate(nvFatbinHandle *handle_indirect, const char **options, size_t optionsCount);

but - what are those options we pass in there? It doesn’t seem like they should be linking options, or compilation options, since we’re past that if we’re creating a fatbin… right?

It’s not documented anywhere that I can find.

see here

The only one used in the example given in that doc is -cuda

1 Like

Is the deprecated target option deprecated in favor of anything?

I’m not sure what you mean by “deprecated target option”. Do you mean the -host option when specifying mac ?

I’m fairly certain that is deprecated because mac OS support in the CUDA toolchain was dropped in the CUDA 10.x timeframe. No, there is no replacement for mac OS for fatbins. It hasn’t been supported in quite a while.

Do you mean the -host option when specifying mac ?

Yes, that’s what I meant… ah, ok, so it’s not the option that’s deprecated, just the “mac” value. I get it.

Anyway, I’ll pick your brain a little further… there’s another set of options: those for nvFatbinAddPTX() and nvFatbinAddLTOIR(). Are those supposed to be liked the ones we have for nvPTXCompilerCompile()? or for cuLinkAddData() I’m asking because the former are a single char*, and the latter are an array of char*'s.

I don’t believe they are the same. They are options for JIT compilation which would be something analogous to running the ptxas tool, so I’m expecting something like options like you might specify for the ptxas tool. But that is just my own conjecture; I don’t have an answer here. When you find a deficiency in the documentation, you are welcome to file a bug.

Regarding the difference in parameter type specification, I think that the formatting of multiple options here is supposed to be such that they are all passed in a single string, rather than in an array as in the previous case (for nvFatbinCreate).

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.