Skip to content

Conversation

@eguiraud
Copy link
Contributor

@eguiraud eguiraud commented Nov 27, 2023

Here are some fixes that I applied in order to get to a working configuration with DistRDF and HTCondor on SWAN. This brings the code in a neighborhood of a working configuration.

I have seen i hang indefinitely on SWAN sometimes, but I'm not sure whether the problem was on the application or the infrastructure side.

Copy link
Member

@vepadulano vepadulano left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice! See some comments from my side

cpp_source = "helpers.h"

ROOT.gSystem.CompileMacro(str(cpp_source), "kO")
print("Not on a worker")
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
print("Not on a worker")

Not really needed, more for debugging purposes

print("Compiling the macro.")
library_source = "helpers.h"
local_dir = get_worker().local_directory
library_path = os.path.join(local_dir, library_source)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shall we also check that library_path points to an existing file, to catch file not found problems earlier?

load_cpp()
ml.load_cpp(fastforest_path)

# TODO: make ml.load_cpp working on distributed
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it not working after this patch?

Comment on lines +377 to +379
def load_all(fastforest_path):
load_cpp()
ml.load_cpp(fastforest_path)
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This probably deserves a comment as to why it's needed.

]


def compile_macro_wrapper(library_path: str):
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since this function is copied verbatim from the analysis, should it live in some utilities module?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is nice, probably deserves a bit more explanation in the first cell, i.e. that this is a notebook to show how to potentially run the analysis on SWAN+HTCondor. Then there's the usual problem of keeping the notebook up to date with the Python script, but I don't know if that fits in that PR

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

Successfully merging this pull request may close these issues.

2 participants