Avoid PyCharm Overloading ========================= This speeds up PyCharm's package index processes and avoids CPU & memory overloading. On my machine (4c/32GB) with 5 conda environments and 10 projects, this reduces PyCharm's package scanning from 15 minutes to 45 seconds. Why? ---- When PyCharm has multiple conda environments, it will sometimes launch concurrent package scanning across those environments. To do so, it uses the `conda` cli, and a tool called conda_packaging_tool.py, available from the JetBrains intellij-community github repository (see below). Unfortunately, these tools do not behave well when launched in parallel, as they tend to overload CPU & memory in this case. How? ---- To avoid stalling these processes, we modify their sources as follows: 1. modify the conda cli $ conda activate base $ pip install runfast $ nano `which conda` Modify the main section: if __name__ == '__main__': from conda.cli import main from runfast import cached cached(main) 2. modify the conda_packaging_tool.py if __name__ == '__main__': from runfast import cached cached(main) How does this work? ------------------- Two simple steps: 1. When called in parallel, only one process is allowed to proceed. 2. `runfast.cached` caches the output of these tools (stdout, stderr) for 1 minute, given the same command line parameters That is, when PyCharm launches 5 package scanning (`conda list`) commands, only one of them will run immediately. If some of the scans are for the same environment, only one of them will actually run, while the others simply return the same output. How to clear the cache or avoid caching at all? $ export RUNFAST_NOCACHE=1 Testing ------- a) conda packaging tool # first time $ time python /opt/pycharm-community-2021.2.1/plugins/python-ce/helpers/conda_packaging_tool.py real 0m13.271s user 0m9.631s sys 0m1.936s # second time $ time python /opt/pycharm-community-2021.2.1/plugins/python-ce/helpers/conda_packaging_tool.py real 0m3.159s user 0m0.139s sys 0m1.298s b) conda cli # first time $ time conda list -p /path/to/env real 0m7.985s user 0m7.883s sys 0m0.087s # second time real 0m0.152s user 0m0.116s sys 0m0.032s References ---------- * https://github.com/JetBrains/intellij-community/blob/master/python/helpers/conda_packaging_tool.py * https://github.com/conda/conda/blob/33a142c16530fcdada6c377486f1c1a385738a96/conda/core/index.py#L53
This speeds up PyCharm's package index processes and avoids CPU & memory overloading
Overview
CupScript is a simple programing language made with python
CupScript CupScript is a simple programming language made with python It includes some basic functions, variables, loops, and some other built in func
Fluxos de captura e subida de dados no datalake da Prefeitura do Rio de Janeiro.
Pipelines Este repositório contém fluxos de captura e subida de dados no datalake da Prefeitura do Rio de Janeiro. O repositório é gerido pelo Escritó
Scitizen - Help scientific research for the benefit of mankind and humanity 🔬
Scitizen - Help scientific research for the benefit of mankind and humanity 🔬 Scitizen has been built from the ground up to give everyone the possibi
Freeze your objects in python
gelidum Freeze your objects in python. Latin English Caelum est hieme frigidum et gelidum; myrtos oleas quaeque alia assiduo tepore laetantur, asperna
A C-like hardware description language (HDL) adding high level synthesis(HLS)-like automatic pipelining as a language construct/compiler feature.
██████╗ ██╗██████╗ ███████╗██╗ ██╗███╗ ██╗███████╗ ██████╗ ██╔══██╗██║██╔══██╗██╔════╝██║ ██║████╗ ██║██╔════╝██╔════╝ ██████╔╝██║██████╔╝█
Absolute solvation free energy calculations with OpenFF and OpenMM
ABsolute SOLVantion Free Energy Calculations The absolv framework aims to offer a simple API for computing the change in free energy when transferring
Create N Share is a No Code solution which gives users the ability to create any type of feature rich survey forms with ease.
create n share Note : The Project Scaffold will be pushed soon. Create N Share is a No Code solution which gives users the ability to create any type
Цифрова збрoя проти xуйлoвської пропаганди.
Паляниця Цифрова зброя проти xуйлoвської пропаганди. Щоб негайно почати шкварити рашистські сайти – мерщій у швидкий старт! ⚡️ А коли ворожі сервери в
0xFalcon - 0xFalcon Tool For Python
0xFalcone Installation Install 0xFalcone Tool: apt install git git clone https:/
Hy - A dialect of Lisp that's embedded in Python
Hy Lisp and Python should love each other. Let's make it happen. Hy is a Lisp dialect that's embedded in Python. Since Hy transforms its Lisp code int
Fork of pathlib aiming to support the full stdlib Python API.
pathlib2 Fork of pathlib aiming to support the full stdlib Python API. The old pathlib module on bitbucket is in bugfix-only mode. The goal of pathlib
Various hdas (Houdini Digital Assets)
aaTools My various assets for Houdini "ms_asset_loader" - Custom importer assets from Quixel Bridge "asset_placer" - Tool for placment sop geometry on
Our product DrLeaf which not only makes the work easier but also reduces the effort and expenditure of the farmer to identify the disease and its treatment methods.
Our product DrLeaf which not only makes the work easier but also reduces the effort and expenditure of the farmer to identify the disease and its treatment methods. We have to upload the image of an
「📖」Tool created to extract metadata from a domain
Metafind is an OSINT tool created with the aim of automating the search for metadata of a particular domain from the search engine known as Google.
BasicVSR++ function for VapourSynth
BasicVSR++ BasicVSR++: Improving Video Super-Resolution with Enhanced Propagation and Alignment Ported from https://github.com/open-mmlab/mmediting De
Python wrapper around Apple App Store Api
App Store Connect Api This is a Python wrapper around the Apple App Store Api : https://developer.apple.com/documentation/appstoreconnectapi So far, i
Very simple encoding scheme that will encode data as a series of OwOs or UwUs.
OwO Encoder Very simple encoding scheme that will encode data as a series of OwOs or UwUs. The encoder is a simple state machine. Still needs a decode
Wordle is fun, so let's ruin it with computers.
ruin-wordle Wordle is fun, so let's ruin it with computers. Metrics This repository assesses two metrics about each algorithm: Success: how many of th
Anki cards generator for Leetcode
Leetcode Anki card generator Summary By running this script you'll be able to generate Anki cards with all the leetcode problems. I personally use it
A GUI love Calculator which saves all the User Data in text file(sql based script will be uploaded soon). Interative GUI. Even For Admin Panel
Love-Calculator A GUI love Calculator which saves all the User Data in text file(sql based script will be uploaded soon). Interative GUI, even For Adm