Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
P parabix-devel
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 9
    • Issues 9
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 2
    • Merge requests 2
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Packages & Registries
    • Packages & Registries
    • Container Registry
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • cameron
  • parabix-devel
  • Issues
  • #33

Closed
Open
Created Dec 05, 2022 by cameron@cameronMaintainer

Repeating streamset template in csv2json

Branch csv2json_with_repeating_template has an initial attempt at using a repeating streamset template in the csv2json application.

I am unsure about how to use this repeating stream set facility. Please add some comments to the header file or the wiki to document.

I have made a guess that you need to provide a vector of individual element values for a single stream, so I have tried to use the bytes of the template strings in csv2json as the values for pattern_t.

If this is correct, then the next question is whether it is possible to apply a kernel such as S2P to a repeating streamset to produce another repeating streamset. Maybe not, because I currently get an error in compiling csv2json on the new branch:

csv2json: /home/cameron/parabix-devel/lib/kernel/pipeline/compiler/analysis/relationship_analysis.cpp:1006: void kernel::PipelineAnalysis::combineDuplicateKernels(kernel::BuilderRef, kernel::ProgramGraph&): Assertion `isa<StreamSet>(G[relationship].Relationship)' failed.

If was not the intention to support the latter, then should I be breaking down the individual bytes into their bits and supply 8 vectors of bits?

Please review this application and advise the path forward for making use of repeating streamsets.

Actually, the ideal method for csv2json would probably be this:

  1. We create a memory buffer having the concatenation of the template strings.
  2. We set this up as a memory source kernel
  3. We transpose to produce bit streams using S2P.
  4. We have a casting facility that can cast the result streamset to an repeating streamset.
Edited Dec 05, 2022 by cameron
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking