{"action":"closed","issue":{"url":"https://api.github.com/repos/serge-sans-paille/pythran/issues/796","repository_url":"https://api.github.com/repos/serge-sans-paille/pythran","labels_url":"https://api.github.com/repos/serge-sans-paille/pythran/issues/796/labels{/name}","comments_url":"https://api.github.com/repos/serge-sans-paille/pythran/issues/796/comments","events_url":"https://api.github.com/repos/serge-sans-paille/pythran/issues/796/events","html_url":"https://github.com/serge-sans-paille/pythran/issues/796","id":298316131,"number":796,"title":"Huge memory consumption and/or crash (pythran 0.8.4.post0)","user":{"login":"paugier","id":8842662,"avatar_url":"https://avatars0.githubusercontent.com/u/8842662?v=4","gravatar_id":"","url":"https://api.github.com/users/paugier","html_url":"https://github.com/paugier","followers_url":"https://api.github.com/users/paugier/followers","following_url":"https://api.github.com/users/paugier/following{/other_user}","gists_url":"https://api.github.com/users/paugier/gists{/gist_id}","starred_url":"https://api.github.com/users/paugier/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/paugier/subscriptions","organizations_url":"https://api.github.com/users/paugier/orgs","repos_url":"https://api.github.com/users/paugier/repos","events_url":"https://api.github.com/users/paugier/events{/privacy}","received_events_url":"https://api.github.com/users/paugier/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":1,"created_at":"2018-02-19T15:30:34Z","updated_at":"2018-02-21T10:58:44Z","closed_at":"2018-02-21T10:58:44Z","author_association":"NONE","body":"I am not able anymore to compile this code with Pythran 0.8.4.post0. It compiles fine with Pythran 0.8.3.\r\n\r\n```\r\nimport numpy as np\r\n\r\n# pythran export compute_subpix_2d_gaussian2(float32[][], int, int)\r\ndef compute_subpix_2d_gaussian2(correl, ix, iy):\r\n    correl_crop = correl[iy-1:iy+2, ix-1:ix+2]\r\n    # hoops, pythran crashes because of this line\r\n    # correl_crop[correl_crop < 0] = 1e-6\r\n\r\n    # we write it like this to please pythran\r\n    tmp = np.where(correl_crop < 0)\r\n    for i0, i1 in zip(tmp[0], tmp[1]):\r\n        correl_crop[i0, i1] = 1e-6\r\n\r\n    c10 = 0\r\n    c01 = 0\r\n    c11 = 0\r\n    c20 = 0\r\n    c02 = 0\r\n    for i in range(3):\r\n        for j in range(3):\r\n            c10 += (i-1)*np.log(correl_crop[j, i])\r\n            c01 += (j-1)*np.log(correl_crop[j, i])\r\n            c11 += (i-1)*(j-1)*np.log(correl_crop[j, i])\r\n            c20 += (3*(i-1)**2-2)*np.log(correl_crop[j, i])\r\n            c02 += (3*(j-1)**2-2)*np.log(correl_crop[j, i])\r\n            c00 = (5-3*(i-1)**2-3*(j-1)**2)*np.log(correl_crop[j, i])\r\n\r\n    c00, c10, c01, c11, c20, c02 = \\\r\n        c00/9, c10/6, c01/6, c11/4, c20/6, c02/6\r\n    deplx = (c11*c01-2*c10*c02)/(4*c20*c02-c11**2)\r\n    deply = (c11*c10-2*c01*c20)/(4*c20*c02-c11**2)\r\n    return deplx, deply, correl_crop\r\n\r\n```\r\n\r\nWith Pythran 0.8.4.post0, g++ consumes too much memory (more than 12 Go) and finally crashes... \r\n\r\nSame behavior with GCC 4.9 and 5.4...\r\n"}}
{"actor":{"display_login":"serge-sans-paille"}}