Yes, I’m very keen to tryout the new shared memory functions as I have been using the FastIO shared memory features in my own operators.
I’ve now tried some more things and have isolated the problem down to the input and output definitions, particularly the use of “path”. After re-reading through the docs I’m a little bit unsure exactly how these should now be specified.
Below is on of my simple pipeline definitions:
- name: raw-correction
description: Raw correction and output to file
- path: /input
- name: out
Using the above works fine when the pipeline is created via the “pipelines” “create” GPRS API call.
However, if I simply change to API version to “0.5.0” and do the same create call I get the following in the response.
['Failed to store pipeline.', 'Unable to complete Pipelines::Create, failed to load pipeline definition. Nvidia.Clara.Platform.Server.Models.PipelineLoadException: "Invalid Pipeline Syntax;\nerror: .operators.output.type must be one of \'array\', \'stream\', \'float16, f16, float32, f32, float64, f64, int8, i8, int16, i16, int32, i32, int64, i64, uint8, u8, uint16, u16, uint32, u32, uint64, u64, string\' (Operator: raw-correction).\nerror: .operators.input.type must be one of \'array\', \'stream\', \'float16, f16, float32, f32, float64, f64, int8, i8, int16, i16, int32, i32, int64, i64, uint8, u8, uint16, u16, uint32, u32, uint64, u64, string\' (Operator: raw-correction).\n".']
Looking at the message above and the docs again, is the problem due to be needing to either 1) omit the “path” property in 0.5.0 for input and output or 2) include an additional “type” property? I’m not really sure how this should now be specified.
I did test simply removing both “input” and “output” sections and the pipeline was created successfully, however I’m not sure if this is correct. I also tried removing both “path” properties but this didn’t work.