Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove reference to drone #20

Open
eileen-kuehn opened this issue Dec 10, 2020 · 0 comments
Open

Remove reference to drone #20

eileen-kuehn opened this issue Dec 10, 2020 · 0 comments

Comments

@eileen-kuehn
Copy link
Member

eileen-kuehn commented Dec 10, 2020

Currently the Drone is nearly a one-to-one copy of the Drone (now Workernode) in the core LAPIS package. There are some subtle differences including:

  • parameters sitename, connection, and empty

sitename: str = None,
connection: "Connection" = None,
empty: callable = lambda drone: drone.theoretical_available_resources.get(
"cores", 1
)
< 1,

  • additional logging information
    • in run
    • in shutdown
    • several occurrences in _run_job

await sampling_required.put(
DroneStatusCaching(
repr(self),
self.pool_resources["cores"],
self.theoretical_available_resources["cores"],
self.jobs_with_cached_data,
)
)

await sampling_required.put(
DroneStatusCaching(
repr(self),
self.pool_resources["cores"],
self.theoretical_available_resources["cores"],
self.jobs_with_cached_data,
)
)

await sampling_required.put(
DroneStatusCaching(
repr(self),
self.pool_resources["cores"],
self.theoretical_available_resources["cores"],
self.jobs_with_cached_data,
)
)

  • handling the initialisation of allocation and utilisation

if (
getattr(levels, resource_key) == 0
and self.pool_resources[resource_key] == 0
):
pass
else:

This prevents us from removing the implementation from the extension. We might consider creating a CachingDrone instead, but there might also be other options available that jobs could be handled transparently.

This issue is related to #21 as the extension of a job also requires subclassing while some of the base methods still need to be copied.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant