Skip to content

AlyShmahell/PyProfyler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyProfyler

a simple memory profiler for python programs.

Installation:

sudo pip3 install git+https://github.com/AlyShmahell/PyProfyler

or

sudo pip3 install pyprofyler

Example:

from pyprofyler import PyProfyler

def wrapped_function():
    array = []
    for i in range(1,1000000):
        array.append(i)
    return array

@PyProfyler
def decorated_function():
    a_list = []
    for i in range(1,1000000):
        a_list.append(i)
    return a_list

if __name__ == '__main__':
    ##############################################
    #    Profiling a function by wrapping it     #
    ##############################################
    wrapped_profile = PyProfyler(wrapped_function)
    # "Not Profiled Yet" Message
    print(wrapped_profile)
    result = wrapped_profile()
    # Profile Message, through __str__
    print(wrapped_profile)
    # Function Execution Result
    print(f"execution result: {result[10]}")
    # Profile Message, through __getitem__
    print(wrapped_profile['profile'])
    ##############################################
    #      Profiling a decorated function        #
    ##############################################
    # "Not Profiled Yet" Message
    print(decorated_function)
    result = decorated_function()
    # Profile Message, through __str__
    print(decorated_function)
    # Function Execution Result
    print(f"execution result: {result[10]}")
    # Profile Message, through __getitem__
    print(decorated_function['profile'])

About

a simple memory profiler for python programs.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages