Yes you are right. There is no need to add that line. I deleted it. But the measured heap peak is still the same.
2017-03-01 0:00 GMT+01:00 Joseph Fox-Rabinovitz <jfoxrabinov...@gmail.com>: > For one thing, `C = np.empty(shape=(n,n), dtype='float64')` allocates 10^4 > extra elements before being immediately discarded. > > -Joe > > On Tue, Feb 28, 2017 at 5:57 PM, Sebastian K <sebastiankaster@googlemail. > com> wrote: > >> Yes it is true the execution time is much faster with the numpy function. >> >> The Code for numpy version: >> >> def createMatrix(n): >> Matrix = np.empty(shape=(n,n), dtype='float64') >> for x in range(n): >> for y in range(n): >> Matrix[x, y] = 0.1 + ((x*y)%1000)/1000.0 >> return Matrix >> >> >> >> if __name__ == '__main__': >> n = getDimension() >> if n > 0: >> A = createMatrix(n) >> B = createMatrix(n) >> C = np.empty(shape=(n,n), dtype='float64') >> C = np.dot(A,B) >> >> #print(C) >> >> In the pure python version I am just implementing the multiplication with >> three for-loops. >> >> Measured data with libmemusage: >> dimension of matrix: 100x100 >> heap peak pure python3: 1060565 >> heap peakt numpy function: 4917180 >> >> >> 2017-02-28 23:17 GMT+01:00 Matthew Brett <matthew.br...@gmail.com>: >> >>> Hi, >>> >>> On Tue, Feb 28, 2017 at 2:12 PM, Sebastian K >>> <sebastiankas...@googlemail.com> wrote: >>> > Thank you for your answer. >>> > For example a very simple algorithm is a matrix multiplication. I can >>> see >>> > that the heap peak is much higher for the numpy version in comparison >>> to a >>> > pure python 3 implementation. >>> > The heap is measured with the libmemusage from libc: >>> > >>> > heap peak >>> > Maximum of all size arguments of malloc(3), all >>> products >>> > of nmemb*size of calloc(3), all size arguments of >>> > realloc(3), length arguments of mmap(2), and new_size >>> > arguments of mremap(2). >>> >>> Could you post the exact code you're comparing? >>> >>> I think you'll find that a naive Python 3 matrix multiplication method >>> is much, much slower than the same thing with Numpy, with arrays of >>> any reasonable size. >>> >>> Cheers, >>> >>> Matthew >>> _______________________________________________ >>> NumPy-Discussion mailing list >>> NumPy-Discussion@scipy.org >>> https://mail.scipy.org/mailman/listinfo/numpy-discussion >>> >> >> >> _______________________________________________ >> NumPy-Discussion mailing list >> NumPy-Discussion@scipy.org >> https://mail.scipy.org/mailman/listinfo/numpy-discussion >> >> > > _______________________________________________ > NumPy-Discussion mailing list > NumPy-Discussion@scipy.org > https://mail.scipy.org/mailman/listinfo/numpy-discussion > >
_______________________________________________ NumPy-Discussion mailing list NumPy-Discussion@scipy.org https://mail.scipy.org/mailman/listinfo/numpy-discussion