BitNet icon indicating copy to clipboard operation
BitNet copied to clipboard

Request: Add Debug build mode

Open y-vectorfield opened this issue 11 months ago • 0 comments

Thre are some declarations of build mode in the setup_env.py scritpt. Hence, I suggest adding the following code in it.

Additional argument

Target: https://github.com/microsoft/BitNet/blob/caf17ec438808bcf9b3da012216c8624a29b8cdc/setup_env.py#L205

parser.add_argument("--build-mode", type=str, choices=["Release", "Debug"], default="Debug", help="Build mode of source")

Compiler extra debug args

COMPILER_EXTRA_DEBUG_ARGS = {
    "arm64": ["-DBITNET_ARM_TL1=ON", "-DCMAKE_BUILD_TYPE=Debug"],
    "x86_64": ["-DBITNET_X86_TL2=ON", "-DCMAKE_BUILD_TYPE=Debug"]
}

Additional build process

Target

https://github.com/microsoft/BitNet/blob/caf17ec438808bcf9b3da012216c8624a29b8cdc/setup_env.py#L184

if args.build-mode == "Release":
    run_command(["cmake", "-B", "build", *COMPILER_EXTRA_ARGS[arch], *OS_EXTRA_ARGS.get(platform.system(), [])], log_step="generate_build_files")
    run_command(["cmake", "--build", "build", "--config", "Release"], log_step="compile")
else:
    run_command(["cmake", "-B", "build", *COMPILER_EXTRA_DEBUG_ARGS[arch], *OS_EXTRA_ARGS.get(platform.system(), [])], log_step="generate_build_files")
    run_command(["cmake", "--build", "build", "--config", "Debug"], log_step="compile")

y-vectorfield avatar Feb 27 '25 09:02 y-vectorfield