An error occurred fetching the project authors.
  1. 24 Oct, 2017 1 commit
    • Victor Stinner's avatar
      bpo-30768: Recompute timeout on interrupted lock (GH-4103) · 850a18e0
      Victor Stinner authored
      Fix the pthread+semaphore implementation of
      PyThread_acquire_lock_timed() when called with timeout > 0 and
      intr_flag=0: recompute the timeout if sem_timedwait() is interrupted
      by a signal (EINTR).
      
      See also the PEP 475.
      
      The pthread implementation of PyThread_acquire_lock() now fails with
      a fatal error if the timeout is larger than PY_TIMEOUT_MAX, as done
      in the Windows implementation.
      
      The check prevents any risk of overflow in PyThread_acquire_lock().
      
      Add also PY_DWORD_MAX constant.
      850a18e0
  2. 29 Sep, 2017 1 commit
  3. 12 Sep, 2017 1 commit
  4. 07 Sep, 2017 1 commit
  5. 21 Apr, 2017 1 commit
  6. 08 Mar, 2017 1 commit
  7. 03 Mar, 2017 1 commit
  8. 11 Jan, 2017 1 commit
    • Victor Stinner's avatar
      Disable _PyStack_AsTuple() inlining · b915bc35
      Victor Stinner authored
      Issue #29234: Inlining _PyStack_AsTuple() into callers increases their stack
      consumption, Disable inlining to optimize the stack consumption.
      
      Add _Py_NO_INLINE: use __attribute__((noinline)) of GCC and Clang.
      
      It reduces the stack consumption, bytes per call, before => after:
      
      test_python_call: 1040 => 976 (-64 B)
      test_python_getitem: 976 => 912 (-64 B)
      test_python_iterator: 1120 => 1056 (-64 B)
      
      => total: 3136 => 2944 (- 192 B)
      b915bc35
  9. 05 Jan, 2017 1 commit
  10. 08 Dec, 2016 2 commits
  11. 15 Nov, 2016 1 commit
  12. 11 Nov, 2016 1 commit
    • Victor Stinner's avatar
      Issue #28618: Make hot functions using __attribute__((hot)) · c6944e7e
      Victor Stinner authored
      When Python is not compiled with PGO, the performance of Python on call_simple
      and call_method microbenchmarks depend highly on the code placement. In the
      worst case, the performance slowdown can be up to 70%.
      
      The GCC __attribute__((hot)) attribute helps to keep hot code close to reduce
      the risk of such major slowdown. This attribute is ignored when Python is
      compiled with PGO.
      
      The following functions are considered as hot according to statistics collected
      by perf record/perf report:
      
      * _PyEval_EvalFrameDefault()
      * call_function()
      * _PyFunction_FastCall()
      * PyFrame_New()
      * frame_dealloc()
      * PyErr_Occurred()
      c6944e7e
  13. 21 Sep, 2016 1 commit
  14. 20 Sep, 2016 1 commit
  15. 19 Sep, 2016 2 commits
  16. 13 Sep, 2016 1 commit
  17. 08 Sep, 2016 1 commit
  18. 07 Sep, 2016 1 commit
  19. 06 Sep, 2016 5 commits
  20. 15 Aug, 2016 2 commits
  21. 22 May, 2016 1 commit
  22. 14 Apr, 2015 1 commit
  23. 12 Apr, 2015 1 commit
  24. 24 Mar, 2015 1 commit
  25. 17 Apr, 2014 1 commit
  26. 23 Nov, 2013 1 commit
  27. 20 Nov, 2013 1 commit
  28. 19 Oct, 2013 2 commits
  29. 27 Aug, 2013 1 commit
  30. 24 Jun, 2013 1 commit
  31. 23 Jun, 2013 1 commit
  32. 22 Jun, 2013 1 commit