mesh-rb 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.idea/.gitignore +8 -0
- data/.idea/mesh-rb.iml +16 -0
- data/.idea/misc.xml +4 -0
- data/.idea/modules.xml +8 -0
- data/.idea/vcs.xml +9 -0
- data/Gemfile +2 -0
- data/Gemfile.lock +17 -0
- data/Rakefile +16 -0
- data/bin/mesh +30 -0
- data/ext/mesh/extconf.rb +13 -0
- data/ext/mesh/mesh/.bazelrc +20 -0
- data/ext/mesh/mesh/.bazelversion +1 -0
- data/ext/mesh/mesh/.clang-format +15 -0
- data/ext/mesh/mesh/.dockerignore +5 -0
- data/ext/mesh/mesh/.editorconfig +16 -0
- data/ext/mesh/mesh/.gitattributes +4 -0
- data/ext/mesh/mesh/.github/workflows/main.yml +144 -0
- data/ext/mesh/mesh/.gitignore +51 -0
- data/ext/mesh/mesh/AUTHORS +5 -0
- data/ext/mesh/mesh/CMakeLists.txt +270 -0
- data/ext/mesh/mesh/CODE_OF_CONDUCT.md +77 -0
- data/ext/mesh/mesh/Dockerfile +30 -0
- data/ext/mesh/mesh/LICENSE +201 -0
- data/ext/mesh/mesh/Makefile +81 -0
- data/ext/mesh/mesh/README.md +97 -0
- data/ext/mesh/mesh/WORKSPACE +50 -0
- data/ext/mesh/mesh/bazel +350 -0
- data/ext/mesh/mesh/mesh-pldi19-powers.pdf +0 -0
- data/ext/mesh/mesh/src/BUILD +222 -0
- data/ext/mesh/mesh/src/CMakeLists.txt +85 -0
- data/ext/mesh/mesh/src/bitmap.h +590 -0
- data/ext/mesh/mesh/src/cheap_heap.h +170 -0
- data/ext/mesh/mesh/src/common.h +377 -0
- data/ext/mesh/mesh/src/copts.bzl +31 -0
- data/ext/mesh/mesh/src/d_assert.cc +75 -0
- data/ext/mesh/mesh/src/fixed_array.h +124 -0
- data/ext/mesh/mesh/src/global_heap.cc +547 -0
- data/ext/mesh/mesh/src/global_heap.h +569 -0
- data/ext/mesh/mesh/src/gnu_wrapper.cc +75 -0
- data/ext/mesh/mesh/src/internal.h +356 -0
- data/ext/mesh/mesh/src/libmesh.cc +239 -0
- data/ext/mesh/mesh/src/mac_wrapper.cc +528 -0
- data/ext/mesh/mesh/src/measure_rss.cc +44 -0
- data/ext/mesh/mesh/src/measure_rss.h +20 -0
- data/ext/mesh/mesh/src/meshable_arena.cc +776 -0
- data/ext/mesh/mesh/src/meshable_arena.h +309 -0
- data/ext/mesh/mesh/src/meshing.h +60 -0
- data/ext/mesh/mesh/src/mini_heap.h +532 -0
- data/ext/mesh/mesh/src/mmap_heap.h +104 -0
- data/ext/mesh/mesh/src/one_way_mmap_heap.h +77 -0
- data/ext/mesh/mesh/src/partitioned_heap.h +111 -0
- data/ext/mesh/mesh/src/plasma/mesh.h +33 -0
- data/ext/mesh/mesh/src/real.cc +52 -0
- data/ext/mesh/mesh/src/real.h +36 -0
- data/ext/mesh/mesh/src/rng/mwc.h +296 -0
- data/ext/mesh/mesh/src/rng/mwc64.h +58 -0
- data/ext/mesh/mesh/src/rpl_printf.c +1991 -0
- data/ext/mesh/mesh/src/runtime.cc +393 -0
- data/ext/mesh/mesh/src/runtime.h +114 -0
- data/ext/mesh/mesh/src/shuffle_vector.h +287 -0
- data/ext/mesh/mesh/src/size_classes.def +251 -0
- data/ext/mesh/mesh/src/static/if.h +36 -0
- data/ext/mesh/mesh/src/static/log.h +43 -0
- data/ext/mesh/mesh/src/testing/benchmark/local_refill.cc +103 -0
- data/ext/mesh/mesh/src/testing/big-alloc.c +28 -0
- data/ext/mesh/mesh/src/testing/fragmenter.cc +128 -0
- data/ext/mesh/mesh/src/testing/global-large-stress.cc +25 -0
- data/ext/mesh/mesh/src/testing/local-alloc.c +16 -0
- data/ext/mesh/mesh/src/testing/meshing_benchmark.cc +189 -0
- data/ext/mesh/mesh/src/testing/thread.cc +35 -0
- data/ext/mesh/mesh/src/testing/unit/alignment.cc +56 -0
- data/ext/mesh/mesh/src/testing/unit/bitmap_test.cc +274 -0
- data/ext/mesh/mesh/src/testing/unit/concurrent_mesh_test.cc +185 -0
- data/ext/mesh/mesh/src/testing/unit/mesh_test.cc +143 -0
- data/ext/mesh/mesh/src/testing/unit/rng_test.cc +22 -0
- data/ext/mesh/mesh/src/testing/unit/size_class_test.cc +66 -0
- data/ext/mesh/mesh/src/testing/unit/triple_mesh_test.cc +285 -0
- data/ext/mesh/mesh/src/testing/userfaultfd-kernel-copy.cc +164 -0
- data/ext/mesh/mesh/src/thread_local_heap.cc +163 -0
- data/ext/mesh/mesh/src/thread_local_heap.h +268 -0
- data/ext/mesh/mesh/src/wrapper.cc +433 -0
- data/ext/mesh/mesh/support/export_mesh.cmake +28 -0
- data/ext/mesh/mesh/support/gen-size-classes +57 -0
- data/ext/mesh/mesh/support/install_all_configs +33 -0
- data/ext/mesh/mesh/support/remove_export_mesh.cmake +48 -0
- data/ext/mesh/mesh/support/update-bazelisk +8 -0
- data/ext/mesh/mesh/theory/32m80.png +0 -0
- data/ext/mesh/mesh/theory/64m80ind.png +0 -0
- data/ext/mesh/mesh/theory/bound_comparison.py +67 -0
- data/ext/mesh/mesh/theory/bounds/impdeg+1 +135 -0
- data/ext/mesh/mesh/theory/choose.py +43 -0
- data/ext/mesh/mesh/theory/common.py +42 -0
- data/ext/mesh/mesh/theory/compute_exp_Y.py +134 -0
- data/ext/mesh/mesh/theory/createRandomString.py +69 -0
- data/ext/mesh/mesh/theory/deg_bound_check.py +100 -0
- data/ext/mesh/mesh/theory/degcheck.py +47 -0
- data/ext/mesh/mesh/theory/dumps/32,1,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,2,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,3,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,4,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,5,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,6,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,7,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,8,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/dumps/32,9,80,dumb.txt +81 -0
- data/ext/mesh/mesh/theory/experiment.py +303 -0
- data/ext/mesh/mesh/theory/experiment_raw_results/.gitignore +0 -0
- data/ext/mesh/mesh/theory/greedy_experiment.py +66 -0
- data/ext/mesh/mesh/theory/greedy_experiment_copy.py +46 -0
- data/ext/mesh/mesh/theory/greedy_experiment_q.py +75 -0
- data/ext/mesh/mesh/theory/makeGraph.py +64 -0
- data/ext/mesh/mesh/theory/manyreps.png +0 -0
- data/ext/mesh/mesh/theory/manystrings.png +0 -0
- data/ext/mesh/mesh/theory/match_vs_color_experiment.py +94 -0
- data/ext/mesh/mesh/theory/maxmatch_vs_E[Y].py +162 -0
- data/ext/mesh/mesh/theory/maxmatch_vs_greedymatch.py +96 -0
- data/ext/mesh/mesh/theory/maxvdeg+1imp++32,80.png +0 -0
- data/ext/mesh/mesh/theory/mesh_util.py +322 -0
- data/ext/mesh/mesh/theory/meshers.py +452 -0
- data/ext/mesh/mesh/theory/meshingBenchmark.py +96 -0
- data/ext/mesh/mesh/theory/occupancyComparison.py +133 -0
- data/ext/mesh/mesh/theory/randmatch_vs_greedymatch.py +97 -0
- data/ext/mesh/mesh/theory/randmatch_vs_greedymatch_q.py +103 -0
- data/ext/mesh/mesh/theory/randmatch_vs_greedymatch_time.py +117 -0
- data/ext/mesh/mesh/theory/read_mesh_dump.py +82 -0
- data/ext/mesh/mesh/theory/test.py +70 -0
- data/ext/mesh/mesh/tools/bazel +1 -0
- data/lib/mesh/version.rb +3 -0
- data/mesh.gemspec +14 -0
- metadata +172 -0
@@ -0,0 +1,82 @@
|
|
1
|
+
#!/usr/bin/env python
|
2
|
+
# -*- coding: utf-8 -*-
|
3
|
+
|
4
|
+
import json
|
5
|
+
import sys
|
6
|
+
import argparse
|
7
|
+
from collections import defaultdict
|
8
|
+
|
9
|
+
import meshers
|
10
|
+
|
11
|
+
MB = 1/1024.0/1024.0
|
12
|
+
|
13
|
+
class Span(object):
|
14
|
+
def __init__(self, obj):
|
15
|
+
self.name = obj['name']
|
16
|
+
self.size = obj['object-size']
|
17
|
+
self.length = obj['length']
|
18
|
+
self.bitmap = obj['bitmap']
|
19
|
+
|
20
|
+
|
21
|
+
def read_data(json_path):
|
22
|
+
'''
|
23
|
+
Reads a dict of size -> span list from a mesh dump file at `json_path`
|
24
|
+
'''
|
25
|
+
size_classes = defaultdict(list)
|
26
|
+
|
27
|
+
with open(json_path) as f:
|
28
|
+
for l in f.readlines():
|
29
|
+
obj = json.loads(l)
|
30
|
+
span = Span(obj)
|
31
|
+
size_classes[span.size].append(span)
|
32
|
+
|
33
|
+
return size_classes
|
34
|
+
|
35
|
+
|
36
|
+
def count_meshes(mesher, spans):
|
37
|
+
bitmaps = [s.bitmap for s in spans]
|
38
|
+
if len(bitmaps) % 2 == 1:
|
39
|
+
bitmaps.append('1' * len(s.bitmap))
|
40
|
+
|
41
|
+
return mesher(bitmaps)
|
42
|
+
|
43
|
+
|
44
|
+
def main():
|
45
|
+
parser = argparse.ArgumentParser()
|
46
|
+
parser.add_argument('--size', type=int, help='size to dump graph')
|
47
|
+
parser.add_argument('json_file', nargs=1, help='A JSON dump from libmesh')
|
48
|
+
args = parser.parse_args()
|
49
|
+
|
50
|
+
if not args.json_file:
|
51
|
+
parser.print_help()
|
52
|
+
return 1
|
53
|
+
|
54
|
+
size_classes = read_data(args.json_file[0])
|
55
|
+
|
56
|
+
sizes = sorted(size_classes.keys(), reverse=True)
|
57
|
+
|
58
|
+
total_size = 0
|
59
|
+
for size in sizes:
|
60
|
+
spans = size_classes[size]
|
61
|
+
total_size += sum([s.size * s.length for s in spans])
|
62
|
+
|
63
|
+
print('Total heap size: %.1f MiB' % (total_size * MB,))
|
64
|
+
|
65
|
+
saved = 0
|
66
|
+
for size in sizes:
|
67
|
+
if size >= 4096:
|
68
|
+
continue
|
69
|
+
spans = size_classes[size]
|
70
|
+
# n = count_meshes(meshers.optimalMesher, spans)
|
71
|
+
# n = count_meshes(meshers.optimalMesher, spans)
|
72
|
+
n = count_meshes(meshers.greedyMesher, spans)
|
73
|
+
print('\t%5d: %d spans (%d meshes)' % (size, len(spans), len(n)))
|
74
|
+
saved += (size * spans[0].length) * len(n)
|
75
|
+
|
76
|
+
print('Saved size: %.1f MiB' % (saved * MB,))
|
77
|
+
|
78
|
+
return 0
|
79
|
+
|
80
|
+
|
81
|
+
if __name__ == '__main__':
|
82
|
+
sys.exit(main())
|
@@ -0,0 +1,70 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
"""
|
3
|
+
Created on Mon Apr 25 14:34:04 2016
|
4
|
+
|
5
|
+
@author: devd
|
6
|
+
"""
|
7
|
+
from __future__ import division
|
8
|
+
import logging
|
9
|
+
import math
|
10
|
+
from choose import nCr
|
11
|
+
import numpy as np
|
12
|
+
from scipy.misc import comb
|
13
|
+
import createRandomString as c
|
14
|
+
import meshers
|
15
|
+
import time
|
16
|
+
import random
|
17
|
+
import functools
|
18
|
+
import json
|
19
|
+
import pickle
|
20
|
+
import os
|
21
|
+
from mesh_util import occupancySort, formatStrings, fast_q
|
22
|
+
from createRandomString import createIndependentRandomStrings
|
23
|
+
|
24
|
+
#logging.getLogger('').handlers = []
|
25
|
+
#logging.basicConfig(level=logging.DEBUG, format='%(asctime)s - %(levelname)s - %(message)s')
|
26
|
+
#logging.debug('This is a log message.')
|
27
|
+
#logging.info('test')
|
28
|
+
#logging.warning('double test')
|
29
|
+
#
|
30
|
+
|
31
|
+
#strings = createIndependentRandomStrings(4,10,numOnes = 2)
|
32
|
+
#new_strings = []
|
33
|
+
#for string in strings:
|
34
|
+
# new_strings.append((string, long(string, base=2)))
|
35
|
+
#print new_strings
|
36
|
+
#print "\n \n \n"
|
37
|
+
##occupancySort(strings)
|
38
|
+
#new_strings.sort(key = lambda x: x[0].count("1"))
|
39
|
+
#print new_strings
|
40
|
+
|
41
|
+
strings = createIndependentRandomStrings(256, 10000, numOnes = 5)
|
42
|
+
strings = formatStrings(strings)
|
43
|
+
occs = [x[2] for x in strings]
|
44
|
+
print np.mean(occs)
|
45
|
+
print np.std(occs)
|
46
|
+
|
47
|
+
def faster_q(length, occ1, occ2):
|
48
|
+
numerator = 1
|
49
|
+
for i in range(length-occ1, length-occ1-occ2, -1):
|
50
|
+
numerator *= i
|
51
|
+
denominator = 1
|
52
|
+
for i in range(length, length-occ2, -1):
|
53
|
+
denominator *= i
|
54
|
+
return float(numerator)/float(denominator)
|
55
|
+
|
56
|
+
length = 128
|
57
|
+
|
58
|
+
start = time.time()
|
59
|
+
for occ1 in range(0,50):
|
60
|
+
for occ2 in range(0,50):
|
61
|
+
result1 = fast_q(length, occ1, occ2)
|
62
|
+
t1 = time.time() - start
|
63
|
+
|
64
|
+
start = time.time()
|
65
|
+
for occ1 in range(0,50):
|
66
|
+
for occ2 in range(0,50):
|
67
|
+
result2 = faster_q(length, occ1, occ2)
|
68
|
+
t2 = time.time()-start
|
69
|
+
print 'fast_q got {} in {} ms'.format(result1, t1)
|
70
|
+
print 'faster_q got {} in {} ms'.format(result2, t2)
|
@@ -0,0 +1 @@
|
|
1
|
+
../bazel
|
data/lib/mesh/version.rb
ADDED
data/mesh.gemspec
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
$:.push File.expand_path('../lib', __FILE__)
|
2
|
+
|
3
|
+
Gem::Specification.new do |s|
|
4
|
+
s.name = 'mesh-rb'
|
5
|
+
s.version = '0.0.1'
|
6
|
+
s.summary = 'mesh allocator. Still under maintenance'
|
7
|
+
s.author = 'ThreadedStream'
|
8
|
+
s.extensions = ['ext/mesh/extconf.rb']
|
9
|
+
s.require_paths = ['lib']
|
10
|
+
s.homepage = 'https://github.com/ThreadedStream/mesh-rb'
|
11
|
+
|
12
|
+
s.files = `git ls-files`.split("\n")
|
13
|
+
s.executables = `git ls-files -- bin/*`.split("\n").map { |f| File.basename(f) }
|
14
|
+
end
|
metadata
ADDED
@@ -0,0 +1,172 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: mesh-rb
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- ThreadedStream
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2021-06-07 00:00:00.000000000 Z
|
12
|
+
dependencies: []
|
13
|
+
description:
|
14
|
+
email:
|
15
|
+
executables:
|
16
|
+
- mesh
|
17
|
+
extensions:
|
18
|
+
- ext/mesh/extconf.rb
|
19
|
+
extra_rdoc_files: []
|
20
|
+
files:
|
21
|
+
- ".idea/.gitignore"
|
22
|
+
- ".idea/mesh-rb.iml"
|
23
|
+
- ".idea/misc.xml"
|
24
|
+
- ".idea/modules.xml"
|
25
|
+
- ".idea/vcs.xml"
|
26
|
+
- Gemfile
|
27
|
+
- Gemfile.lock
|
28
|
+
- Rakefile
|
29
|
+
- bin/mesh
|
30
|
+
- ext/mesh/extconf.rb
|
31
|
+
- ext/mesh/mesh/.bazelrc
|
32
|
+
- ext/mesh/mesh/.bazelversion
|
33
|
+
- ext/mesh/mesh/.clang-format
|
34
|
+
- ext/mesh/mesh/.dockerignore
|
35
|
+
- ext/mesh/mesh/.editorconfig
|
36
|
+
- ext/mesh/mesh/.gitattributes
|
37
|
+
- ext/mesh/mesh/.github/workflows/main.yml
|
38
|
+
- ext/mesh/mesh/.gitignore
|
39
|
+
- ext/mesh/mesh/AUTHORS
|
40
|
+
- ext/mesh/mesh/CMakeLists.txt
|
41
|
+
- ext/mesh/mesh/CODE_OF_CONDUCT.md
|
42
|
+
- ext/mesh/mesh/Dockerfile
|
43
|
+
- ext/mesh/mesh/LICENSE
|
44
|
+
- ext/mesh/mesh/Makefile
|
45
|
+
- ext/mesh/mesh/README.md
|
46
|
+
- ext/mesh/mesh/WORKSPACE
|
47
|
+
- ext/mesh/mesh/bazel
|
48
|
+
- ext/mesh/mesh/mesh-pldi19-powers.pdf
|
49
|
+
- ext/mesh/mesh/src/BUILD
|
50
|
+
- ext/mesh/mesh/src/CMakeLists.txt
|
51
|
+
- ext/mesh/mesh/src/bitmap.h
|
52
|
+
- ext/mesh/mesh/src/cheap_heap.h
|
53
|
+
- ext/mesh/mesh/src/common.h
|
54
|
+
- ext/mesh/mesh/src/copts.bzl
|
55
|
+
- ext/mesh/mesh/src/d_assert.cc
|
56
|
+
- ext/mesh/mesh/src/fixed_array.h
|
57
|
+
- ext/mesh/mesh/src/global_heap.cc
|
58
|
+
- ext/mesh/mesh/src/global_heap.h
|
59
|
+
- ext/mesh/mesh/src/gnu_wrapper.cc
|
60
|
+
- ext/mesh/mesh/src/internal.h
|
61
|
+
- ext/mesh/mesh/src/libmesh.cc
|
62
|
+
- ext/mesh/mesh/src/mac_wrapper.cc
|
63
|
+
- ext/mesh/mesh/src/measure_rss.cc
|
64
|
+
- ext/mesh/mesh/src/measure_rss.h
|
65
|
+
- ext/mesh/mesh/src/meshable_arena.cc
|
66
|
+
- ext/mesh/mesh/src/meshable_arena.h
|
67
|
+
- ext/mesh/mesh/src/meshing.h
|
68
|
+
- ext/mesh/mesh/src/mini_heap.h
|
69
|
+
- ext/mesh/mesh/src/mmap_heap.h
|
70
|
+
- ext/mesh/mesh/src/one_way_mmap_heap.h
|
71
|
+
- ext/mesh/mesh/src/partitioned_heap.h
|
72
|
+
- ext/mesh/mesh/src/plasma/mesh.h
|
73
|
+
- ext/mesh/mesh/src/real.cc
|
74
|
+
- ext/mesh/mesh/src/real.h
|
75
|
+
- ext/mesh/mesh/src/rng/mwc.h
|
76
|
+
- ext/mesh/mesh/src/rng/mwc64.h
|
77
|
+
- ext/mesh/mesh/src/rpl_printf.c
|
78
|
+
- ext/mesh/mesh/src/runtime.cc
|
79
|
+
- ext/mesh/mesh/src/runtime.h
|
80
|
+
- ext/mesh/mesh/src/shuffle_vector.h
|
81
|
+
- ext/mesh/mesh/src/size_classes.def
|
82
|
+
- ext/mesh/mesh/src/static/if.h
|
83
|
+
- ext/mesh/mesh/src/static/log.h
|
84
|
+
- ext/mesh/mesh/src/testing/benchmark/local_refill.cc
|
85
|
+
- ext/mesh/mesh/src/testing/big-alloc.c
|
86
|
+
- ext/mesh/mesh/src/testing/fragmenter.cc
|
87
|
+
- ext/mesh/mesh/src/testing/global-large-stress.cc
|
88
|
+
- ext/mesh/mesh/src/testing/local-alloc.c
|
89
|
+
- ext/mesh/mesh/src/testing/meshing_benchmark.cc
|
90
|
+
- ext/mesh/mesh/src/testing/thread.cc
|
91
|
+
- ext/mesh/mesh/src/testing/unit/alignment.cc
|
92
|
+
- ext/mesh/mesh/src/testing/unit/bitmap_test.cc
|
93
|
+
- ext/mesh/mesh/src/testing/unit/concurrent_mesh_test.cc
|
94
|
+
- ext/mesh/mesh/src/testing/unit/mesh_test.cc
|
95
|
+
- ext/mesh/mesh/src/testing/unit/rng_test.cc
|
96
|
+
- ext/mesh/mesh/src/testing/unit/size_class_test.cc
|
97
|
+
- ext/mesh/mesh/src/testing/unit/triple_mesh_test.cc
|
98
|
+
- ext/mesh/mesh/src/testing/userfaultfd-kernel-copy.cc
|
99
|
+
- ext/mesh/mesh/src/thread_local_heap.cc
|
100
|
+
- ext/mesh/mesh/src/thread_local_heap.h
|
101
|
+
- ext/mesh/mesh/src/wrapper.cc
|
102
|
+
- ext/mesh/mesh/support/export_mesh.cmake
|
103
|
+
- ext/mesh/mesh/support/gen-size-classes
|
104
|
+
- ext/mesh/mesh/support/install_all_configs
|
105
|
+
- ext/mesh/mesh/support/remove_export_mesh.cmake
|
106
|
+
- ext/mesh/mesh/support/update-bazelisk
|
107
|
+
- ext/mesh/mesh/theory/32m80.png
|
108
|
+
- ext/mesh/mesh/theory/64m80ind.png
|
109
|
+
- ext/mesh/mesh/theory/bound_comparison.py
|
110
|
+
- ext/mesh/mesh/theory/bounds/impdeg+1
|
111
|
+
- ext/mesh/mesh/theory/choose.py
|
112
|
+
- ext/mesh/mesh/theory/common.py
|
113
|
+
- ext/mesh/mesh/theory/compute_exp_Y.py
|
114
|
+
- ext/mesh/mesh/theory/createRandomString.py
|
115
|
+
- ext/mesh/mesh/theory/deg_bound_check.py
|
116
|
+
- ext/mesh/mesh/theory/degcheck.py
|
117
|
+
- ext/mesh/mesh/theory/dumps/32,1,80,dumb.txt
|
118
|
+
- ext/mesh/mesh/theory/dumps/32,2,80,dumb.txt
|
119
|
+
- ext/mesh/mesh/theory/dumps/32,3,80,dumb.txt
|
120
|
+
- ext/mesh/mesh/theory/dumps/32,4,80,dumb.txt
|
121
|
+
- ext/mesh/mesh/theory/dumps/32,5,80,dumb.txt
|
122
|
+
- ext/mesh/mesh/theory/dumps/32,6,80,dumb.txt
|
123
|
+
- ext/mesh/mesh/theory/dumps/32,7,80,dumb.txt
|
124
|
+
- ext/mesh/mesh/theory/dumps/32,8,80,dumb.txt
|
125
|
+
- ext/mesh/mesh/theory/dumps/32,9,80,dumb.txt
|
126
|
+
- ext/mesh/mesh/theory/experiment.py
|
127
|
+
- ext/mesh/mesh/theory/experiment_raw_results/.gitignore
|
128
|
+
- ext/mesh/mesh/theory/greedy_experiment.py
|
129
|
+
- ext/mesh/mesh/theory/greedy_experiment_copy.py
|
130
|
+
- ext/mesh/mesh/theory/greedy_experiment_q.py
|
131
|
+
- ext/mesh/mesh/theory/makeGraph.py
|
132
|
+
- ext/mesh/mesh/theory/manyreps.png
|
133
|
+
- ext/mesh/mesh/theory/manystrings.png
|
134
|
+
- ext/mesh/mesh/theory/match_vs_color_experiment.py
|
135
|
+
- ext/mesh/mesh/theory/maxmatch_vs_E[Y].py
|
136
|
+
- ext/mesh/mesh/theory/maxmatch_vs_greedymatch.py
|
137
|
+
- ext/mesh/mesh/theory/maxvdeg+1imp++32,80.png
|
138
|
+
- ext/mesh/mesh/theory/mesh_util.py
|
139
|
+
- ext/mesh/mesh/theory/meshers.py
|
140
|
+
- ext/mesh/mesh/theory/meshingBenchmark.py
|
141
|
+
- ext/mesh/mesh/theory/occupancyComparison.py
|
142
|
+
- ext/mesh/mesh/theory/randmatch_vs_greedymatch.py
|
143
|
+
- ext/mesh/mesh/theory/randmatch_vs_greedymatch_q.py
|
144
|
+
- ext/mesh/mesh/theory/randmatch_vs_greedymatch_time.py
|
145
|
+
- ext/mesh/mesh/theory/read_mesh_dump.py
|
146
|
+
- ext/mesh/mesh/theory/test.py
|
147
|
+
- ext/mesh/mesh/tools/bazel
|
148
|
+
- lib/mesh/version.rb
|
149
|
+
- mesh.gemspec
|
150
|
+
homepage: https://github.com/ThreadedStream/mesh-rb
|
151
|
+
licenses: []
|
152
|
+
metadata: {}
|
153
|
+
post_install_message:
|
154
|
+
rdoc_options: []
|
155
|
+
require_paths:
|
156
|
+
- lib
|
157
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
158
|
+
requirements:
|
159
|
+
- - ">="
|
160
|
+
- !ruby/object:Gem::Version
|
161
|
+
version: '0'
|
162
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
requirements: []
|
168
|
+
rubygems_version: 3.1.2
|
169
|
+
signing_key:
|
170
|
+
specification_version: 4
|
171
|
+
summary: mesh allocator. Still under maintenance
|
172
|
+
test_files: []
|