Is the PyPy GIL part of the PyPy interpreter implementation in RPython, or is it something that translate.py automatically adds? i.e., if I were to write my own new language interpreter in RPython and ran it through translate.py, would it be subject to the GIL a priori, or would that be up to my interpreter code?
1
There are 1 best solutions below
Related Questions in PYPY
- Issues with supervisord and monit with gunicorn+gevent+pypy
- How do I install PyPy on appveyor?
- import error does not occurs only when required library is installed while repl is running
- Running Scrapy on PyPy
- add flags to cffi compile process
- Why is appending to a string so much slower in PyPy than in CPython?
- PyPy doesn't find a module made of only *.pyc files
- Python and Threads with PyPy?
- Creating a new Virtual Environment for PyPy3 in PyCharm
- Getting strange error from pip-pypy when trying to install PySide
- How can I get the stable version of numpy for PyPy?
- scapy showing error with pypy
- How to optimize python dynamic programming knapsack (multiprocessing?)
- pypy without a visible console window
- How to use PyPy on a Mac?
Related Questions in GIL
- How can I create a long GIL lock
- Plone: checkinterval can't import pystone
- boost.python c++ multithreading
- How do you determine if a function holds the GIL?
- multiprocessing + asyncio/aiohttp for optimal online purchasing
- Why does Python provide locking mechanisms if it's subject to a GIL?
- Python Threads are not Improving Speed
- Global Interpreter Lock(GIL) implementation example?
- Python multithreading and Global Interpreter Lock
- Acquiring the global interpreter lock from python
- Is the PyThreadState* of the main python thread expected to be NULL?
- CherryPy 60x as slow in benchmark with 8 requesting threads compared to 7
- is it possible to release the GIL before a C function that blocks and might call back into Python?
- How can an interpretive language avoid using Global Interpreter lock (GIL)?
- Is there a general purpose way to test for the existence of a GIL?
Related Questions in RPYTHON
- Failing to run Python script from R because of module ImportErrors
- PyPy Translation error
- How to use rpython translator to convert my python script into pypy?
- rPython can't find Pandas
- Importing Rpy with python 2.6, R2.14 and Win 7x64 error
- rPython method python.get returns weird encoding
- rPython installation fails, libpython not in linker paths
- Transforming a checkboxGroupInput object into a vector
- Using rPython import numpy with python 3.5
- rPython and __future__ imports
- rPython using wrong python installation on Mac OSX
- Environment variables and RStudio
- rPython and Tensorflow error when running session
- Change version of python in rPython?
- Random String generator python
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
The GIL handling is inserted by module/thread/gil.py in your PyPy checkout. It's an optional translation feature and it's only added when thread module is enabled. That said, RPython itself is not a thread-safe language (like for example C), so you would need to take care yourself to lock objects correctly, so they don't come up inconsistent. The main issue would be to provide a thread-aware garbage collector, because the one that we use right now is not thread safe and just adding a lock would remove a whole lot of benefits from a free-threading model.
Cheers, fijal