vyre 0.4.0

GPU compute intermediate representation with a standard operation library
Documentation
[[vectors]]
name = "empty_pop"
commands = ["pop_max"]
expected = [{ status = "underflow", value = 4294967295, priority = 4294967295, len = 0 }]

[[vectors]]
name = "single_push_pop"
commands = ["push value=5 priority=7", "pop_max"]
expected = [
  { status = "ok", value = 4294967295, priority = 4294967295, len = 1 },
  { status = "ok", value = 5, priority = 7, len = 0 },
]

[[vectors]]
name = "priority_order"
commands = ["push value=1 priority=4", "push value=2 priority=9", "push value=3 priority=6", "pop_max", "pop_max", "pop_max"]
expected = [
  { status = "ok", value = 4294967295, priority = 4294967295, len = 1 },
  { status = "ok", value = 4294967295, priority = 4294967295, len = 2 },
  { status = "ok", value = 4294967295, priority = 4294967295, len = 3 },
  { status = "ok", value = 2, priority = 9, len = 2 },
  { status = "ok", value = 3, priority = 6, len = 1 },
  { status = "ok", value = 1, priority = 4, len = 0 },
]

[[vectors]]
name = "peek_preserves_heap"
commands = ["push value=4 priority=1", "push value=8 priority=5", "peek_max", "pop_max"]
expected = [
  { status = "ok", value = 4294967295, priority = 4294967295, len = 1 },
  { status = "ok", value = 4294967295, priority = 4294967295, len = 2 },
  { status = "ok", value = 8, priority = 5, len = 2 },
  { status = "ok", value = 8, priority = 5, len = 1 },
]

[[vectors]]
name = "tie_break_by_value"
commands = ["push value=4 priority=7", "push value=9 priority=7", "pop_max"]
expected = [
  { status = "ok", value = 4294967295, priority = 4294967295, len = 1 },
  { status = "ok", value = 4294967295, priority = 4294967295, len = 2 },
  { status = "ok", value = 9, priority = 7, len = 1 },
]

[[vectors]]
name = "capacity_one_overflow"
capacity = 1
commands = ["push value=1 priority=1", "push value=2 priority=99", "pop_max"]
expected = [
  { status = "ok", value = 4294967295, priority = 4294967295, len = 1 },
  { status = "overflow", value = 4294967295, priority = 4294967295, len = 1 },
  { status = "ok", value = 1, priority = 1, len = 0 },
]