►
From YouTube: OMR Architecture Meeting 20220331
Description
Agenda:
* cgroup v2 support [ @babsingh ]
A
Welcome
everyone
to
the
march
31st
omar
architecture
meeting
today
we
have
one
topic
from
abnet
singh
I'll
be
introducing
the
omrc
group
api
so
that
whenever
you're
ready,
please
take
it
away.
B
Thanks
daryl,
sir,
today
I
will
be
providing
an
update
on
the
current
state
of
cgr
api
and
over
what
it
does
and
the
existing
problems
we
are
facing
with
this
api
and
what
steps
we
will
be
taking
in
resolving
those
problems.
B
Its
implementation
is
hierarchical.
That
means
it
has
a
tree
representation
and
it
has
ended
entities
which
can
be
either
called
as
a
resource,
controller
and
synonyms.
Other
synonyms
are
controllers
or
subsystems
and
for,
for
example,
the
cpu
controller,
regulates
distribution
of
cpu
cycles,
bandwidth
and
scaling
policy
on
the
operating
system.
B
B
B
Some
of
the
simplifications
are
seeker.
V2
only
allows
a
single
hierarchy,
which
is
not
the
case
in
seeker
b1
in
secret
b1,
each
subsystem
or
each
controller
could
have
its
own
hierarchy,
thus
a
complete
just
making
the
implementation
more
complex
and
another
simplification
is
that
processes
can
belong
to
a
only
belong
to
a
single
subgroup
in
v2,
which
is
another
step
towards
simplification,
because
in
secret,
b1
processors
can
choose
to
be
part
of
multiple
subgroups.
B
So
this
is
a
brief
overview
of
what
c
group
or
control
group
on
linux
is
now
moving
to
the
omrc
group
api.
B
It's.
It
only
reads:
details
about
processes,
resource
information
from
the
c
group
interface,
for
example.
It
gathers
information
about
memory,
stats
limits,
how
much
memory
is
being
used
and
so
on.
It
also
needs
information
about
cu,
a
cpu
bandwidth,
to
determine
our
number
of
cpus
available
and
for
on
numa
systems.
B
B
The
main
issue
over
here
is
that
the
missing
secret
v2
support
was
not
caught
by
the
omar
testing
through
the
pr
build
and
diagnosing
malfunctions
of
this
api
is
challenging
because
the
failures
are
not
blocking
the
process
keeps
running
and
it
can
lead
to
performance
issues,
and
these
performance
performance
issues
can
go
unnoticed
if
the
purpose
not
being
continuously
monitored
over
different
iterations
of
the
runtime.
B
So
we
have
seen
breakages
and
downstream
projects
specifically
opengl
9.
runtime
starts
with
incorrect
memory.
Runtime
does
not
load
the
embedded
aod
code
and
the
malfunctions
can
also
lead
to
have
a
potential
to
cause
more
per
issues,
and
in
some
cases
it
has
also
prevented
customers
to
adopt
open
j9.
B
And
the
first
step
in
preventing
breakage
of
this
api
is
to
enhance
functional
testing
which
will
be
pursued
as
part
of
omar
issue
1281,
but
this
would
be
sufficient
on
its
own.
We
will
also
require
infrastructure
changes,
since
this
api
works
differently
on
sega
v1
and
ziggura
v2.
In
addition,
its
behavior
changes
whether
we
are
running
in
a
container
or
not.
B
So
we
need
four
configurations:
a
linux
with
seeker
v1
linux,
with
seeker
v2
and
the
same
in
and
container
container
containerized
environment.
B
So
we
can
support
these
configurations
without
adding
new
pr
bills.
If
we
optimize
existing
linux
pr
wheels.
There
are,
I
think,
seven
pr
builds
on
different
linux
platforms
and
if
we
run
them
with
each
of
the
above
configurations,
we
should
be
able
to
support
the
required
infrastructure
to
fully
test
dc
group
api
without
any
new
or
more
resources.
B
A
So
how
was
the
api
breaking
like
what
what
happened
to
it
that
caused
it
to
to
break?
I
mean,
yes,
we
weren't
testing
for
it,
but
why
did
it
become
stale.
B
Because
I
think
in
some
cases,
some
of
the
containers
or
some
the
newer
linux
operating
systems
are
using
secret
v2
by
default
and
on
those
systems.
This
api
just
gives
incorrect
information
and
the
testing
the
current
testing
we
have
does
not
validate
if
it's
not
sufficient
to
validate.
If
this
api
works
correctly,.
A
B
And
in
containerized
environments
also,
some
of
the
functions
this
api
relies
upon
was
were
malfunctioning,
so
we
couldn't
identify
if
we
were
running
in
a
containerized
environment.
So
since
there
were
no
tests
and
we
were
not
running
dpr
bills
in
the
containerized
environment,
so
a
lot
of
those
malfunctions
were
also
going
unnoticed.
B
A
B
A
Okay
and
then
in
order
to
modify
the
pr
builds.
That
presumably
means
that
those
tests
need
to
be
running
in
a
container.
B
Or
in
a
linux
operating
system
bare
metal,
bare
metal
operating
system
with
seeker
v1,
and
then
you
would
need
another
one
with
seeger
v2
enabled
and
then
you
would
also
need
to
run
secret,
v1
and
v2
in
a
container.
So
four
configurations
in
total.
But
I've
seen
there
are
different
container
technologies
and
to
testify.
A
A
B
Both
are
available
depending
upon
what
os
you're
running,
either
c1,
either
v1
may
be
enabled,
or
if
it's
a
newer
operating
system
v2
may
be
enabled.
So
we
don't
know
exactly
so.
You
would
need
tags.
You
need
to
tag
the
machines
by
inspecting
them.
B
Api
stays
the
same.
It
needs
to
function
correctly
in
both
the
environments.
A
A
B
I
haven't
looked
into
what
machines,
what
coverage
or
what
secret
version
each
machine
has
yet
so
that
is
still
a
to-do.
B
C
A
Okay,
well
I
mean,
if
you're
just
piggybacking
on
top
of
an
existing
either
a
linux
installation.
I
don't
know
if
we
actually
run
do
we
do.
I
don't
think
we
do
container
testing
on
omr
yet,
but
certainly
running
it
on
top
of
whatever
the
bare
metal
or
it's
a
virtual
vm
seems
to
be
doable.
B
But
then
docker
is
no
longer
free
as
a
container
technology
we'll
we
have
to
worry
about
all
the
things
at
some
point.
A
Do
they
have?
I
don't
I
don't
recall
all
the
restrictions
on
the
other
on
the
on
the
new
license?
What
about
do
they
give
any
sort
of
exception
to
open
source
projects,
because
that's.
A
B
Yes,
there
should
be
something
like
that,
but
I
would
have
to
double
check,
but
because
there
are
other
container
technologies
as
well,
and
we
will
I'm
not
sure
if
we
need,
we
will
probably
need
to
make
sure
our
functions
will
check
whether
we
are
running
in
a
container
works
in
those
container
technologies
correctly,
because
the
implementation
may
change
different
may
change
slightly
depending
upon
the
container
technology.
B
Yup,
so
we
have
some
container
variation
in
container
technology,
so
we
don't
so
we
will
know
like
like
some,
so
I'm
guessing
podman
and
docker
are
the
widely
most
widely
used
containers.
C
A
A
A
You
mentioned
something
earlier
about
performance
problems.
What's
what's
the
origin
of
what?
What
would
cause
that?
What
what
causes
the
performance
issues.
B
For
instance,
if
you
allocate
less
memory,
then
what
can
be
allocated,
then
you
are
spending
a
lot
of
time
in
gc,
for
instance,
and
which
will
affect
the
throughput
of
an
application.
Similarly,
if
you're
not
using
aot
code,
then
again
your
throughput
will
be
impacted
and
all
those
things
I
think
depend
upon
this
api
functioning.
A
C
A
B
B
A
A
Okay,
so
what's
the
what's
the
plan
of
attack
here,
you
need
to
configure
the
some
of
the
nodes
on
the
on.
C
A
Ci
farm
with
the
yeah
with
you
have
to
re-image
them,
either
with
with
with
vt
or
sorry
re-enable
the
enable
v2
support
on
some
of
them.
Some
of
them.
You
have
to
look
into
getting
some
container
technology
installed
on
there.
B
But
I
don't
have
access
to
formatting
the
machine.
So
who
would
be
the
point
of
contact?
Is
it
going
to
be
adam
joe.
B
So
I
can
create
an
outline
for
them
and
see
if.
A
Yeah,
I
guess
it
would
have
been
good
to
have
adam
here
today
to
at
least
address
some
of
the
address
some
of
those
questions.
But
if
you
have
an
issue
that
you
create
an
omr
for
what
you
need,
we
can
certainly
tag
the
appropriate
people
there
so
that
yep.
A
A
B
A
Just
trying
to
think
how
that
the
effects
on
the
nodes,
where
you
want
to
run
container
technology,
that
that
container
technology
is
only
you're
just
making
it
available
on
those
nodes
that
doesn't
mean
that
a
test
actually
has
to
use
container
technology.
Is
that
right?
So,
for
example,
just
the
tests
that
need
to
deploy
in
a
container
would
use
that,
whereas
we
could
still
dispatch
jobs
to
it
that
don't
want
to
run
in
a
container.
B
B
A
Oh,
I
didn't
mean
it
that
granularity,
I
meant,
what
do
they
mean.
A
B
A
All
right,
I
don't
know
what,
so
you
are
confident
that
you
don't
need
to
be
testing
this
on
power
or
z,.
A
64,
even
I
guess
you
had
that
you
had
arm
on
your
on
your
list,
but.
B
B
A
Okay,
not
aware
of
this
off
the
top
of
my
head.
Does
this
apply
to
mac
os
at
all.
A
All
right,
okay,
any
questions
for
babnet
concerns.
A
So
you're
going
to
be
driving
all
of
this,
then
the
infrastructure
side,
the
test
development.
C
Okay,
so
this
support
itself
has
been
merged
into
omr.
It's
the
testing
that
is
being
discussed
here.
Is
that
right
or
has
the
core
v2
support
not
been
merged
yet.
C
B
So,
but
in
the
future,
because
I
think
it
will
help
us
resolve
those
customer
issues
quickly
if
we
can
add
v2
support
as
soon
as
possible.
But
in
the
future
we
will
have
tests
which
will
automatically
verify
the
functionality
of
this
api.
C
B
That's
correct,
I
think
dpi
bills
will
only
test
compilation
failures,
but
behavioral
testing
is
done
locally
and
I
think
we
are
getting
a
confirmation,
like
things
are
being
fixed
in
up
in
upstream
or
sorry
in
downstream
projects
such
as
open
j9,
as
those
fears
get
merged.
A
So
when
you're
testing
one
of
these
api,
like,
for
example,
you
you
mentioned
earlier
an
example
about
the
available
memory-
was
not
coming
back
correctly.
How
are
you
valid?
How
are
you
ver?
How
are
you
testing
the
api?
Are
you
just
making
sure
that
it
returns
so
that
any
kind
of
exception,
or
is
there
any
attempt
to
currently.
B
I
think
currently
it
only
does
the
current
test
only
checks
if
it's
returning
a
valid
value,
it
doesn't
verify
if
that
valid
value
is
correct.
So
you
would
need
system,
information
or
the
post
information
on
what
memory
the
host
has
and
then
you
would
need
to
compare
it
with
what
the
api
is
returning.
B
That
is
missing,
so
you
would
need
a
further
level
of
verification
where
you
already
know
what
the
machine,
what
stats
the
machine
has
and
then
you
will
need
you
will
compare
with
what
the
api
is
returning
right
now.
I
think
the
mem
limit
test
only
checks
for
a
valid
value
or
if
there
are
any
errors
in
running
the
api,
so
it
can
still
return
a
valid
value
and
it
may
still
it
may
be
incorrect.
A
Okay
sounds
like
this
is.
A
Important
important
work
for
the
container
environments
for
sure
and
glad
to
see
that
there's
more
testing
coming,
that's
good.
A
Any
other
questions
for
baby.
A
A
Okay,
that
was
our
last
our
only
topic
for
the
for
this
week's
meeting,
so
I've
got
the
agendas
created
for
the
next
two
meetings.
We've
already
got
a
topic
for
the
next
one
in
two
weeks,
but
you
know
if
it's
a
small
topic,
we
can
still
squeeze
one
in
there
so
by
all
means
find
those
and
propose
topics
on
those
issues.
If
you,
if
you
want
to
bring
something
up,
if
not,
I
guess
that's
all
for
today,
we'll
adjourn
and
we'll
see
everybody
in
two
weeks,
thanks
thanks
baby
take.