NvSciIpc Init
    NvSciIpcEndpoint ipcEndpoint = 0;
    err = NvSciIpcInit();
    if (err != NvSciError_Success) {
        goto fail;
    }
    err = NvSciIpcOpenEndpoint("ipc_endpoint", &ipcEndpoint);
    if (err != NvSciError_Success) {
        goto fail;
    }
    /* ... */
    NvSciIpcCloseEndpoint(ipcEndpoint);
    NvSciIpcDeinit();Applications connected through an NvSciIpcEndpoint can exchange NvSciBuf structures
        (NvSciBufAttrList or NvSciBufObj) using the export/import
      APIs provided by NvSciBuf.
- NvSciBuf Export APIs return an appropriate export descriptor for the specified NvSciIpcEndpoint.
- Applications are responsible for transporting the export descriptor returned by NvSciBuf using the same NvSciIpcEndpoint.
- NvSciBuf Import APIs return the respective NvSciBuf structure for the specified export descriptor.
- NvSciBuf provides different APIs for transporting reconciled and unreconciled attribute
        lists. For reconciled attribute lists, applications can optionally validate the reconciled
          list against one or more unreconciled attribute lists to ensure that the reconciled
        attribute list satisfies the parameters of the importing process' unreconciled lists.
        This can be done by either passing unreconciled lists to
          NvSciBufAttrListIpcImportReconciledAPI while importing or by invokingNvSciBufAttrListValidateReconciledAPI after importing.