sstsimulator / sst-elements

SST Architectural Simulation Components and Libraries
http://www.sst-simulator.org
Other
93 stars 121 forks source link

miranda: check request operation instead of using dynamic_cast #2411

Closed heyitsanthony closed 3 weeks ago

heyitsanthony commented 1 month ago

For my simulation, approximately 15-20% of CPU time is spent resolving one dynamic_cast in miranda. This dynamic cast does not appear to be necessary because mirandaCPU dispatches GeneratorRequests based on the request's operation.

This patch replaces the dynamic_cast with an operation check and adds an assertion on the MemoryOpRequest's operation type. The assertion ensures a MemoryOpRequest is either READ or WRITE to avoid potential incorrect static_cast'ing into CustomOpRequests.

sst-autotester commented 1 month ago

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging NO INSPECTION HAS BEEN PERFORMED ON THIS PULL REQUEST! - This PR must be inspected by setting label 'AT: PRE-TEST INSPECTED'.

sst-autotester commented 3 weeks ago

Status Flag 'Pre-Test Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED by label AT: PRE-TEST INSPECTED! Autotester is Removing Label; this inspection will remain valid until a new commit to source branch is performed.

sst-autotester commented 3 weeks ago

Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects:

Pull Request Auto Testing STARTING (click to expand)

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements

  • Build Num: 1694
  • Status: STARTED

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements_Make-Dist

  • Build Num: 1083
  • Status: STARTED

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements_MT-2

  • Build Num: 1652
  • Status: STARTED

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements_MR-2

  • Build Num: 1652
  • Status: STARTED

Build Information

Test Name: SST__AutotestGen2_NewFW_OSX-14-XC15-ARM2_OMPI-4.1.6_PY3.10_sst-elements

  • Build Num: 224
  • Status: STARTED
## Using Repos:
Repo: ELEMENTS (heyitsanthony/sst-elements)
  • Branch: anthony/miranda-dyncast
  • SHA: a25a4b78391c4f6ca55195f1c3e18752a7f5ab6f
  • Mode: TEST_REPO
Repo: SQE (sstsimulator/sst-sqe)
  • Branch: devel
  • SHA: 2574c98896598820227190149834172b962dc3fc
  • Mode: SUPPORT_REPO
Repo: CORE (sstsimulator/sst-core)
  • Branch: devel
  • SHA: a9cccddcf4527e618e0a278d2c063ef7e995aebc
  • Mode: SUPPORT_REPO
Repo: MACRO (sstsimulator/sst-macro)
  • Branch: devel
  • SHA: e211a97813a499816de44ccd603da04719f81f18
  • Mode: SUPPORT_REPO
Pull Request Author: heyitsanthony

sst-autotester commented 3 weeks ago

Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED

Pull Request Auto Testing has PASSED (click to expand)

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements

  • Build Num: 1694
  • Status: PASSED

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements_Make-Dist

  • Build Num: 1083
  • Status: PASSED

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements_MT-2

  • Build Num: 1652
  • Status: PASSED

Build Information

Test Name: SST__AutotestGen2_NewFW_sst-test_OMPI-4.1.4_PY3.6_sst-elements_MR-2

  • Build Num: 1652
  • Status: PASSED

Build Information

Test Name: SST__AutotestGen2_NewFW_OSX-14-XC15-ARM2_OMPI-4.1.6_PY3.10_sst-elements

  • Build Num: 224
  • Status: PASSED
sst-autotester commented 3 weeks ago

Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ gvoskuilen ]!

sst-autotester commented 3 weeks ago

Status Flag 'Pull Request AutoTester' - Pull Request will be Automerged

sst-autotester commented 3 weeks ago

Merge on Pull Request# 2411: IS A SUCCESS - Pull Request successfully merged