Skip to content

Commit 550e13d

Browse files
⚡️ Speed up method AlexNet._classify by 379%
Here is an optimized version of your program. Improvements focus on avoiding redundant computation in the list comprehension by pre-computing the result that does not depend on the loop variable. **Summary of optimizations:** - Compute `mod_val` only once instead of in every loop iteration. - Use `[mod_val] * len(features)` to quickly create the result list. - Handle empty `features` efficiently.
1 parent 2d811db commit 550e13d

File tree

1 file changed

+6
-2
lines changed
  • code_to_optimize/code_directories/simple_tracer_e2e

1 file changed

+6
-2
lines changed

code_to_optimize/code_directories/simple_tracer_e2e/workload.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,12 @@ def _extract_features(self, x):
4141
return result
4242

4343
def _classify(self, features):
44-
total = sum(features)
45-
return [total % self.num_classes for _ in features]
44+
# Compute total sum once, then compute modulo only once.
45+
# Use list multiplication for fast vector creation.
46+
if not features:
47+
return []
48+
mod_val = sum(features) % self.num_classes
49+
return [mod_val] * len(features)
4650

4751

4852
class SimpleModel:

0 commit comments

Comments
 (0)