def test_init_jugspace(tmpdir): jugdir = tmpdir gridjug.grid_jug( jugfile=PRIMES_JUGFILE, jugdir=jugdir.strpath, local=True, ) jug.init(jugfile=PRIMES_JUGFILE, jugdir=jugdir.strpath)
def _status_nocache(options): store, _ = jug.init(options.jugfile, options.jugdir) Task.store = memoize_store(store, list_base=True) tasks_waiting = defaultdict(int) tasks_ready = defaultdict(int) tasks_running = defaultdict(int) tasks_failed = defaultdict(int) tasks_finished = defaultdict(int) for t in task.alltasks: if t.can_load(): tasks_finished[t.name] += 1 elif t.can_run(): if t.is_locked(): if t.is_failed(): tasks_failed[t.name] += 1 else: tasks_running[t.name] += 1 else: tasks_ready[t.name] += 1 else: tasks_waiting[t.name] += 1 _print_status(options, tasks_waiting, tasks_ready, tasks_running, tasks_failed, tasks_finished) return sum(tasks_finished.values())
def test_nld_failing_keep_going(jugdir): gridjug.grid_jug(jugfile=FAILING_JUGFILE, jugdir=jugdir, keep_going=True, **NLD_GRIDMAP_PARAMS) _, jugspace = jug.init(jugfile=FAILING_JUGFILE, jugdir=jugdir) for n, task in zip(range(2, 11), jugspace['primes10']): assert task.can_load() == (n != 6)
def test_nld_access_results(jugdir): gridjug.grid_jug(jugfile=PRIMES_JUGFILE, jugdir=jugdir, **NLD_GRIDMAP_PARAMS) _, jugspace = jug.init(jugfile=PRIMES_JUGFILE, jugdir=jugdir) assert jug.value(jugspace['primes10']) == [ True, True, False, True, False, True, False, False, False ]
def test_failing_keep_going(tmpdir): jugdir = tmpdir gridjug.grid_jug( jugfile=FAILING_JUGFILE, jugdir=jugdir.strpath, local=True, keep_going=True, ) _, jugspace = jug.init(jugfile=FAILING_JUGFILE, jugdir=jugdir.strpath) for n, task in zip(range(2, 11), jugspace['primes10']): assert task.can_load() == (n != 6)
def test_access_results(tmpdir): jugdir = tmpdir gridjug.grid_jug( jugfile=PRIMES_JUGFILE, jugdir=jugdir.strpath, local=True, ) _, jugspace = jug.init(jugfile=PRIMES_JUGFILE, jugdir=jugdir.strpath) assert jug.value(jugspace['primes10']) == [ True, True, False, True, False, True, False, False, False ]
def load_jugfile(options): store, _ = jug.init(options.jugfile, options.jugdir) h2idx = {} ht = [] deps = {} for i, t in enumerate(task.alltasks): deps[i] = [h2idx[d.hash() if isinstance(d, Task) else d._base_hash()] for d in t.dependencies()] hash = t.hash() ht.append((i, t.name, hash, unknown)) h2idx[hash] = i rdeps = defaultdict(list) for k, v in deps.items(): for rv in v: rdeps[rv].append(k) return store, ht, deps, dict(rdeps)
import jug jug.init('jugfile', 'jugdata') import jugfile results = jug.task.value(jugfile.fullresults) for p, t in results: print "%s\n\n Password was '%s'" % (t, p)
import jug import jug.task jug.init('eval_electro_jug.py', 'eval_electro_jug.jugdata') import eval_electro_jug results = jug.task.value(eval_electro_jug.results) # Now use these results import numpy as np RESULTS_FROM_JUG = 'results_from_jug.txt' # Stitch the results back together: top_k_accs, result_lines = zip(*results) acc_storage = np.stack(top_k_accs) # We now compute the path level average accuracies and print these out. top_k_accs = np.mean((np.cumsum(acc_storage, axis=1) > 0.5).astype(np.float64), axis=0) for k, k_acc in enumerate(top_k_accs, start=1): print(f"The top-{k} accuracy is {k_acc}") # Finally we store the reaction paths in a text file. with open(RESULTS_FROM_JUG, 'w') as fo: fo.writelines('\n'.join(result_lines))
def main(): jug.init('jug_demo.py', 'redis://127.0.0.1/') import jug_demo print "Merged counts", jug.task.value(jug_demo.merged_counts)
def test_nld_init_jugspace(jugdir): gridjug.grid_jug(jugfile=PRIMES_JUGFILE, jugdir=jugdir, **NLD_GRIDMAP_PARAMS) jug.init(jugfile=PRIMES_JUGFILE, jugdir=jugdir)
''' Created on Jul 22, 2015 @author: linzhang ''' import jug jug.init('foldx_montecarlo_jug_v2.py', 'foldx_montecarlo_jug_v2.jugdata') import foldx_montecarlo_jug_v2 count = 0 total = 0 for i in jug.task.value(foldx_montecarlo_jug_v2.rand): if i >= jug.task.value(foldx_montecarlo_jug_v2.obs): count += 1 total += i r_value = count / float(len(foldx_montecarlo_jug_v2.rand)) print jug.task.value(foldx_montecarlo_jug_v2.obs) print jug.task.value(len(foldx_montecarlo_jug_v2.rand)) print total print total / len(foldx_montecarlo_jug_v2.rand) print "r_value: " + str(r_value)
import jug import jug.task jug.init('jugfile.py', 'jugfile.jugdata') import jugfile results = jug.task.value(jugfile.results) with open('MPs.txt') as f: for mp, r in zip(f, results): mp = mp.strip() print(mp, ": ", " ".join(r[:8]))