Reputation
Badges 1
195 × Eureka!I understand that to report any value should be presented as string, how does the "inverse casting" work when I pull some value from the config?
Another option is to pull Tasks from a dedicated queue and use the LocalClearMLJob to spwan themThis sounds like it can work. we are talking about something like:
` #<Machine 1>
#Init Optimizer with some dedicated queue
<Machine 2>
heavy one time Common Initialization
while True:
# sample queue
# enqueue with LocalClearMLJob
# Execute Something
# report results
<Machine i>
heavy one time Common Initialization
while True:
# sample same queue
# enqueue wi...
But it does make me think, if instead of changing the optimizer I launch a few workers that "pull" enqueued tasks, and then report values for them in such a way that the optimizer is triggered to collect the results? would it be possible?
we see this:
$ ps ax | grep python
10589 ? S 0:05 python3 fileserver.py
10808 ? Sl 18:07 python3 -m apiserver.server
30047 pts/0 S+ 0:00 grep --color=auto python
AgitatedDove14 after a small test run we done, we get some issues with the proposed approach
I think it works as far as what you mentioned is concerned, there is a dynamic link in the debug samples that downloads the html file when we try to view it, and it is updated according to the notebook
However we access our server from a limited networking machine that can only access AWS ips, and the HTML file is not a standalone and has some dependencies that require networking.. so can only be vi...
That's good enough for me, I forgot about the all projects option
The "notebook preview" link doesn't pop-up the s3 credentials, however the "notebook" artifact when clicking on the download button does show this pop up
they actually seem to be different in the way that the UI server is showing them.. one is a link (the html) and has no pop up, the other one (.ipynb) is a text with a download button in the end of the string which does show the mentioned pop up
its the module where the cfg is defined, like in the example you shared config_files/cfg.py
AgitatedDove14 , I am referring to some generic HPO scenario where you define some HP space lets say:param1 = np.linspace(lower_bound, upper_bound, n) param2 = np.linspace(lower_bound, upper_bound, n)then you run an optimization that samples this HP space,
For each trial a sample is pulled from the space, some experiment is performed and you get a score. Then to analyze the behavior of your objective you want to understand the relation between the params and objective score.
Then if you ...
FrothyDog40 , done 🙂
https://github.com/allegroai/clearml/issues/474
Hi AgitatedDove14 , so it looks something like this:
` Task.init
trainer.fit(model) # clearml logging starts from 0 and logs all summaries correctly according to real count
triggered fit stopping at epoch=n
something
trainer.fit(model) # clearml logging starts from n+n (thats how it seems) for non explicit scalar summaries (debug samples, scalar resources monitoring, and also global iteration count)
triggered fit stopping
... `I am at the moment diverging from this implementation to s...
Hi TimelyPenguin76 , I'm not getting the behavior mentioned above.. I am doing the following:
I clone some "baseline" config from a task I run I edit the OmegConf Configuration Object and adjust one of the values in the yaml enqueue the run, however I'm getting the same config as before... without the changes..what am I missing?
thanks AgitatedDove14 , Not that I know I didn't do any special setup other than the straightforward pip install hydra-core --pre
Yes I already learned about it from this thread 🙂
I am just trying to get it programatically, so sure I can read the clearml.conf file to get the server default but I thought maybe there is some attribute \ utility available for this
so actually in our case we have an S3 link, but when downloading it, it seems correct.. there is probably some way to make an S3 path open up in the browser by default
from the example I shared above
config_files/cfg.py
` from hydra.core.config_store import ConfigStore
from dataclasses import dataclass
@dataclass
class MasterConfig:
test: str = 'test'
cs = ConfigStore.instance()
cs.store(name="config", node=MasterConfig) `
I have some custom configuration that describes the experiment I am running..
Some dictionary.. nothing to do with frameworks
I found a super weird fix for this error.. no idea why it works but maybe it can help with debugging it..try: task = Task.init(project_name="examples", task_name="hydra configuration", reuse_last_task_id=False) except: task = Task.init(project_name="examples", task_name="hydra configuration", reuse_last_task_id=True)
if I can't "pull", execute, report tasks from the same persistent python script it doesn't solve the problem of avoiding rerunning some heavy setup for a lightweight trial
in order to have an automatically updating preview
ohh actually I think I remember, when you connect a dictionary, the local dtype is used for the casting of the remote matching key (probably more nuanced)
I'll try to create a minimal example later today if the above is not sufficient
we have 8 core 16 gb ram, API server uses uses 1 core 100% and everything else seem to be in low utilization. it is a standard installation. how can we change the number of internal API server handler processes??
AgitatedDove14 , I see, someone must have faced the issue of dumping regular expression strings in tuple before?
I'll have a think and a look too, unfortunately not today
AgitatedDove14 , seem to work significantly better! thanks!
so if I wait a few minutes I will be able to get the latest version?