# 012.Test_py_memory_001.py
import sys
n = int(sys.argv[1])
@profile
def r():
import pandas as pd
import numpy as np
import time
N = n
data = pd.DataFrame(np.random.uniform(1, 9, (N, 38)))
data[data[12] > 5]
time.sleep(2)
r()
通过调用memory_profiler模块,
pip install memory_profiler
pip install psutil
cat 012.Test_py_memory_001.py
"""
import sys
n = int(sys.argv[1])
@profile
def r():
import pandas as pd
import numpy as np
import time
N = n
data = pd.DataFrame(np.random.uniform(1,9,(N, 38)))
data[data[12] > 5]
time.sleep(2)
r()
"""
py3 -m memory_profiler 012.Test_py_memory_001.py 10
"""
Filename: 012.Test_py_memory_001.py
Line # Mem usage Increment Line Contents
================================================
4 28.727 MiB 28.727 MiB @profile
5 def r():
6 69.566 MiB 40.840 MiB import pandas as pd
7 69.566 MiB 0.000 MiB import numpy as np
8 69.566 MiB 0.000 MiB import time
9 69.566 MiB 0.000 MiB N = n
10 69.566 MiB 0.000 MiB data = pd.DataFrame(np.random.uniform(1,9,(N, 38)))
11 69.805 MiB 0.238 MiB data[data[12] > 5]
12 69.805 MiB 0.000 MiB time.sleep(2)
"""
py3 -m memory_profiler 012.Test_py_memory_001.py 100
"""
Filename: 012.Test_py_memory_001.py
Line # Mem usage Increment Line Contents
================================================
4 28.730 MiB 28.730 MiB @profile
5 def r():
6 69.570 MiB 40.840 MiB import pandas as pd
7 69.570 MiB 0.000 MiB import numpy as np
8 69.570 MiB 0.000 MiB import time
9 69.570 MiB 0.000 MiB N = n
10 69.570 MiB 0.000 MiB data = pd.DataFrame(np.random.uniform(1,9,(N, 38)))
11 69.809 MiB 0.238 MiB data[data[12] > 5]
12 69.809 MiB 0.000 MiB time.sleep(2)
"""
py3 -m memory_profiler 012.Test_py_memory_001.py 1000
"""
Filename: 012.Test_py_memory_001.py
Line # Mem usage Increment Line Contents
================================================
4 28.730 MiB 28.730 MiB @profile
5 def r():
6 69.574 MiB 40.844 MiB import pandas as pd
7 69.574 MiB 0.000 MiB import numpy as np
8 69.574 MiB 0.000 MiB import time
9 69.574 MiB 0.000 MiB N = n
10 69.816 MiB 0.242 MiB data = pd.DataFrame(np.random.uniform(1,9,(N, 38)))
11 70.324 MiB 0.508 MiB data[data[12] > 5]
12 70.324 MiB 0.000 MiB time.sleep(2)
"""
py3 -m memory_profiler 012.Test_py_memory_001.py 10000
"""
Filename: 012.Test_py_memory_001.py
Line # Mem usage Increment Line Contents
================================================
4 28.723 MiB 28.723 MiB @profile
5 def r():
6 69.566 MiB 40.844 MiB import pandas as pd
7 69.566 MiB 0.000 MiB import numpy as np
8 69.566 MiB 0.000 MiB import time
9 69.566 MiB 0.000 MiB N = n
10 72.641 MiB 3.074 MiB data = pd.DataFrame(np.random.uniform(1,9,(N, 38)))
11 72.922 MiB 0.281 MiB data[data[12] > 5]
12 72.922 MiB 0.000 MiB time.sleep(2)
"""
py3 -m memory_profiler 012.Test_py_memory_001.py 100000
"""
Filename: 012.Test_py_memory_001.py
Line # Mem usage Increment Line Contents
================================================
4 28.727 MiB 28.727 MiB @profile
5 def r():
6 69.574 MiB 40.848 MiB import pandas as pd
7 69.574 MiB 0.000 MiB import numpy as np
8 69.574 MiB 0.000 MiB import time
9 69.574 MiB 0.000 MiB N = n
10 98.691 MiB 29.117 MiB data = pd.DataFrame(np.random.uniform(1,9,(N, 38)))
11 100.473 MiB 1.781 MiB data[data[12] > 5]
12 100.473 MiB 0.000 MiB time.sleep(2)
"""
py3 -m memory_profiler 012.Test_py_memory_001.py 1000000
"""
Filename: 012.Test_py_memory_001.py
Line # Mem usage Increment Line Contents
================================================
4 28.723 MiB 28.723 MiB @profile
5 def r():
6 69.574 MiB 40.852 MiB import pandas as pd
7 69.574 MiB 0.000 MiB import numpy as np
8 69.574 MiB 0.000 MiB import time
9 69.574 MiB 0.000 MiB N = n
10 359.598 MiB 290.023 MiB data = pd.DataFrame(np.random.uniform(1,9,(N, 38)))
11 369.070 MiB 9.473 MiB data[data[12] > 5]
12 369.070 MiB 0.000 MiB time.sleep(2)
"""