Versuchen GOLD - Frei
Optimising RAM Usage with Python
Open Source For You
|March 2026
Discover how we can make better use of RAM by applying various Python optimisation techniques.
In today's world, with the abundance of RAM available, we rarely think about optimising our code. But sooner or later, and before we can realise it, we hit the limits of the hardware.
Let's begin with how to measure the amount of RAM used by a Python program. There is always more than one way to do so and each has its merits.
Using sys.getsizeof
This is a builtin function from the sys module that returns the shallow size of a single Python object in bytes.
What it measures: It measures only the memory directly attributed to the object itself (e.g., the list structure), excluding the size of any referenced objects (e.g., the integers or strings inside a list).
The pros are:
- Simple, fast and lightweight.
- Useful for quick comparisons of basic object overhead (e.g., empty list vs small list).
Cons/limitations:
- Underestimates containers like lists, dicts, or custom objects with reference values in them.
- As it is not recursive, it doesn't help with complex structures or total memory footprint.
When to use: Use it for basic, one-off checks on simple objects or understanding Python's object overhead. It's not suitable for profiling real memory usage in applications.
import sys
def get_object_size_mb(obj): """
Returns the size of a Python object in megabytes (MB).
""" size_bytes = sys.getsizeof(obj)
size_mb = size_bytes / (1024 * 1024) # Convert bytes to MB
return size_mb
# create huge list
a = [i for i in range(5_000_000)] size_of_list_mb = get_object_
size_mb(a)
print(f"Size python object is: {size_of_list_mb:.2f} MB")
##OUTPUT
% /usr/bin/python3 getsizeof_sample.py Size python object is: 38.35 MB
Using tracemalloc
Diese Geschichte stammt aus der March 2026-Ausgabe von Open Source For You.
Abonnieren Sie Magzter GOLD, um auf Tausende kuratierter Premium-Geschichten und über 9.000 Zeitschriften und Zeitungen zuzugreifen.
Sie sind bereits Abonnent? Anmelden
WEITERE GESCHICHTEN VON Open Source For You
Open Source For You
I2C and I3C: How Modern Devices Communicate
I3C and I2C are both two-wire communication protocols that help exchange data between multiple devices. While I3C preserves the simplicity of I2C, it introduces new features suited for today's sensor-rich devices.
8 mins
March 2026
Open Source For You
Data Deduplication Done the Right Way
Deduplication helps to save space on Linux-based storage systems. Choose the right platform and check whether it meets your goals.
5 mins
March 2026
Open Source For You
The Relevance of Rubber Duck Debugging in the Age of AI
Discover why rubber duck debugging is a powerful process today.
4 mins
March 2026
Open Source For You
Sending IoT Sensor Data to Public or Private Servers
This IoT system shows a simple and effective way to send sensor data using an ESP8266 microchip.
3 mins
March 2026
Open Source For You
Optimising RAM Usage with Python
Discover how we can make better use of RAM by applying various Python optimisation techniques.
7 mins
March 2026
Open Source For You
How a Job Portal Benefited from Microservices Architecture
Microservices architecture has emerged as a preferred pattern for building scalable and maintainable software applications. Here's how a monolithic job portal application was re-engineered into a microservices-based system. The migration process, key design decisions, the technology stack used, and measurable improvements in performance and flexibility are all laid out for you.
9 mins
March 2026
Open Source For You
The Role that Software Architects Play
Software architects design software projects and ensure these meet their goals. They must balance tech skills with leadership and mentoring abilities.
5 mins
March 2026
Open Source For You
The Path to Cybersecurity in the Quantum Era
The rise of quantum computing will be accompanied by a failure of conventional cryptography. Post-quantum cryptography and advanced threat detection methodologies, among other techniques, are being evolved to counter security threats in the quantum era.
8 mins
March 2026
Open Source For You
Why Open Source Large Language Models are Popular
Open source large language models mark a pivotal moment in the evolution of generative Al. By lowering barriers to entry and fostering collaborative innovation,these models are enabling a broader spectrum of organisations to benefit from Al.
7 mins
March 2026
Open Source For You
Ant Group open sources two frontier AI models
Ant Group has open sourced two trillion-parameter frontier AI models-Ling2.5-1T and Ring-2.5-1T-placing advanced large language and reasoning systems directly in the hands of developers and researchers worldwide.
1 min
March 2026
Listen
Translate
Change font size
