Skip to content

Why ObjectTextSizeOz is bigger than ObjectTextSizeO0 ? #824

Open
@sparks-code

Description

@sparks-code

❓ Questions and Help

I tested the code size in relation to the platform and this is my code. My compilergym version is 0.25 and the benchmark i used is cbench.

cbench = env1.datasets["benchmark://cbench-v1"]
cbench_list = list(cbench.benchmark_uris())
for bench in cbench_list:
    with compiler_gym.make("llvm-autophase-codesize-v0") as env:  
        env.reset(benchmark = bench)
        print(env.benchmark)
        print(f'''ObjectTextSize = {env.observation.ObjectTextSizeBytes()},
        ObjectTextSizeO0 = {env.observation.ObjectTextSizeO0()},
        ObjectTextSizeO3= {env.observation.ObjectTextSizeO3()},
        ObjectTextSizeOz = {env.observation.ObjectTextSizeOz()},
        ''')

this is result
image
I want to know why ObjectTextSizeOz is bigger than ObjectTextSizeO0 ?
I optimize adpcm program with -O3 and -Oz in the command line

~/.local/share/compiler_gym/llvm-v0/bin/clang -O0 -c adpcm.bc -o adpcm_O0.o
~/.local/share/compiler_gym/llvm-v0/bin/clang -Oz -c adpcm.bc -o adpcm_Oz.o
~/.local/share/compiler_gym/llvm-v0/bin/clang -O3 -c adpcm.bc -o adpcm_O3.o

and the result is
image
why the result is different from compilergym?Is this normal?

Additional Context

Metadata

Metadata

Assignees

No one assigned

    Labels

    QuestionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions