Skip to content
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 22 additions & 12 deletions code_to_optimize/code_directories/simple_tracer_e2e/workload.py
Original file line number Diff line number Diff line change
@@ -1,16 +1,15 @@
from concurrent.futures import ThreadPoolExecutor
from time import sleep


def funcA(number):
number = number if number < 1000 else 1000
k = 0
for i in range(number * 100):
k += i
# Simplify the for loop by using sum with a range object
j = sum(range(number))

# Use a generator expression directly in join for more efficiency
return " ".join(str(i) for i in range(number))
number = min(1000, number)
# Use arithmetic sum formula instead of for loop for k
k = (number * 100) * (number * 100 - 1) // 2
# Use arithmetic sum formula for j as well for more efficiency
j = number * (number - 1) // 2
# Use list comprehension for join for better performance with large 'number'
return " ".join([str(i) for i in range(number)])


def test_threadpool() -> None:
Expand All @@ -21,14 +20,15 @@ def test_threadpool() -> None:
for r in result:
print(r)


class AlexNet:
def __init__(self, num_classes=1000):
self.num_classes = num_classes
self.features_size = 256 * 6 * 6

def forward(self, x):
features = self._extract_features(x)

output = self._classify(features)
return output

Expand All @@ -43,15 +43,24 @@ def _classify(self, features):
total = sum(features)
return [total % self.num_classes for _ in features]


class SimpleModel:
@staticmethod
def predict(data):
return [x * 2 for x in data]

result = []
sleep(10)
for i in range(500):
for x in data:
computation = 0
computation += x * i**2
result.append(computation)
return result

@classmethod
def create_default(cls):
return cls()


def test_models():
model = AlexNet(num_classes=10)
input_data = [1, 2, 3, 4, 5]
Expand All @@ -60,6 +69,7 @@ def test_models():
model2 = SimpleModel.create_default()
prediction = model2.predict(input_data)


if __name__ == "__main__":
test_threadpool()
test_models()
Loading