Comments (6)
I think using the Dask Client
as a context manager would definetly be an improvement. However this would involve quite some refactoring and since we are planing to release on Thursday, I would propose to simply fix the bug for now and create a new issue regarding using Dask Clients
as context managers. What do you think? @eddiebergman @Neeratyoy
from dehb.
Does it mean that the client is never destructed in this code base or could be a Dask version-related thing?
from dehb.
Not a dask version related thing, it's basically doing:
class A:
def __del__(self):
if isisntance(self, Client):
...
Also relying on __del__
for for cleanup is usually a bad practice and can lead to problems if DEHB would be the last thing to be cleaned up.
The correct way, is that Dask Clients
can be used as context managers and is likely what you want to have around your hot loop. In the case of a user supplied dask, not sure what you want, might be bad form to automatically shut down their client unless they've specified it somehow.
from dehb.
Okay thanks, so 2 aspects here as I see:
- There is a bug here and the check should be
isinstance(self, self.client):
- Whether we should use
__del__
or not
from dehb.
Sounds fine to me, as long as it works generally at the moment, then fire away.
from dehb.
I second @eddiebergman!
Just keep an issue alive to remind us :)
from dehb.
Related Issues (20)
- Continuously develop unit tests
- Keep active brackets in a dictionary HOT 1
- Implement ask-and-tell interface for DEHB HOT 1
- Use of deprecated np.int in dimension type checking HOT 3
- Configuration and budgets in each brackets HOT 6
- Using Dask ```Client``` as context manager
- No support for Constant type in vector_to_configspace() and configspace_to_vector() HOT 3
- Update CHANGELOG with the historic releases
- Updating and populating the documentation
- Implement versioning for documentation HOT 1
- Introduce IDs for evaluated configurations HOT 2
- Continuing configuration evolution when run budget is exhausted. HOT 2
- Implement parallel DE
- [Bug] Seeding is not applied to configspace HOT 3
- Is there any way to hide non-critical logs to stdout? HOT 8
- ERROR - Failed to communicate with scheduler during heartbeat. followed by TimeoutError: No valid workers found HOT 2
- Test backward compatibility with NumPy2.0 HOT 4
- Ask & Tell for DE
- Update numpy dependency as soon as ConfigSpace works with numpy 2.0
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dehb.