diff --git a/.bazelrc b/.bazelrc index c8db7472..5ae19945 100644 --- a/.bazelrc +++ b/.bazelrc @@ -24,6 +24,7 @@ build:ciremotebuild --remote_download_outputs=all build:ciremotebuild --tls_client_certificate=/root/.ssh/buildbuddy-cert.pem build:ciremotebuild --tls_client_key=/root/.ssh/buildbuddy-key.pem build:ciremotebuild --build_metadata=VISIBILITY=PUBLIC +build:ciremotebuild --local_ram_resources=HOST_RAM*.5 test:ciremotebuild --crosstool_top=@llvm_toolchain//:toolchain test:ciremotebuild --bes_backend=grpcs://cloud.buildbuddy.io @@ -35,3 +36,4 @@ test:ciremotebuild --tls_client_certificate=/root/.ssh/buildbuddy-cert.pem test:ciremotebuild --tls_client_key=/root/.ssh/buildbuddy-key.pem test:ciremotebuild --build_metadata=VISIBILITY=PUBLIC test:ciremotebuild --remote_timeout=3600 +test:ciremotebuild --local_ram_resources=HOST_RAM*.5 diff --git a/flows/basic_asic.bzl b/flows/basic_asic.bzl index 594f7822..55c10176 100644 --- a/flows/basic_asic.bzl +++ b/flows/basic_asic.bzl @@ -43,6 +43,17 @@ def basic_asic_flow(name, target, cells, top = None, extra_args = {}, gds = True top = name extra_args = dict(**extra_args) + build_test_common = dict( + # According to + # https://bazel.build/reference/be/common-definitions#common-attributes-tests + # - setting size to "enormous" means that bazel will assume the task + # takes 800mb of memory. + size="enormous", + # But setting size="enormous" causes timeout to become "external" (IE + # 60 minutes), so we force it back to 15m. + timeout="long", + ) + # Synthesis synthesize_rtl( name = name + "-step1-synth", @@ -62,6 +73,7 @@ def basic_asic_flow(name, target, cells, top = None, extra_args = {}, gds = True build_test( name = "build-" + name + "-step1-synth", targets = [":" + name + "-step1-synth"], + **build_test_common, ) # Static timing analysis of synthesis result @@ -79,6 +91,7 @@ def basic_asic_flow(name, target, cells, top = None, extra_args = {}, gds = True build_test( name = "build-" + name + "-step1-synth_sta", targets = [":" + name + "-step1-synth_sta"], + **build_test_common, ) # Place and Route @@ -101,6 +114,7 @@ def basic_asic_flow(name, target, cells, top = None, extra_args = {}, gds = True targets = [ ":" + name + "-step2-place_and_route", ], + **build_test_common, ) # FIXME: Should add a post place and route run_opensta? @@ -123,6 +137,7 @@ def basic_asic_flow(name, target, cells, top = None, extra_args = {}, gds = True targets = [ ":" + name + "-step3-gds", ], + **build_test_common, ) # Make sure everything in the extra_args dictionary has been used.