Comments (4)
Thanks for that!
Ok so what I did is that I wrote a simple C program that reads from the graph an ASCII file and writes it into a binary file, as required by Gemini.
Here is that code: here
The file src/ASCII2Bin.c contains the converter
The file data/scale16_s.mm is the input to it, it has 65535 vertices and 1818848 edges
When I run: mpirun -n 1 ./sssp ./scale16_s.bin 65535 39
It seems to estimate the number of edges correctly. Further it gives the following output and halts with this error message:
thread support level provided by MPI: MPI_THREAD_SERIALIZED
thread-0 bound to socket-0
thread-3 bound to socket-0
thread-2 bound to socket-0
thread-1 bound to socket-0
threads=1*4
interleave on 0
|V| = 65535, |E| = 1818848
|V'_0| = 65535 |E^dense_0| = 1818761
|V'_0_0| = 65535 |E^dense_0_0| = 1818761
sssp: /home/user/codes/GeminiGraph-master/core/graph.hpp:336: int Graph::get_partition_id(VertexId) [with EdgeData = float; VertexId = unsigned int]: Assertion `false' failed.
[mypc:22558] *** Process received signal ***
[mypc:22558] Signal: Aborted (6)
[mypc:22558] Signal code: (-6)
[mypc:22558] [ 0] /lib/x86_64-linux-gnu/libpthread.so.0(+0x10330)[0x7f3e91e51330]
[mypc:22558] [ 1] /lib/x86_64-linux-gnu/libc.so.6(gsignal+0x37)[0x7f3e91ab2c37]
[mypc:22558] [ 2] /lib/x86_64-linux-gnu/libc.so.6(abort+0x148)[0x7f3e91ab6028]
[mypc:22558] [ 3] /lib/x86_64-linux-gnu/libc.so.6(+0x2fbf6)[0x7f3e91aabbf6]
[mypc:22558] [ 4] /lib/x86_64-linux-gnu/libc.so.6(+0x2fca2)[0x7f3e91aabca2]
[mypc:22558] [ 5] ./sssp[0x4125bc]
[mypc:22558] [ 6] ./sssp[0x409b5d]
[mypc:22558] [ 7] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5)[0x7f3e91a9df45]
[mypc:22558] [ 8] ./sssp[0x409cef]
[mypc:22558] *** End of error message ***
mpirun noticed that process rank 0 with PID 22558 on node tulip exited on signal 6 (Aborted).
from geminigraph.
Hi. Since your downloaded file is in WebGraph format, you need to write a program using the WebGraph library to decode the downloaded data and write out the edges in binary (i.e. each edge consists of two 32-bit integers representing source and destination, and an optional weight if you need to run algorithms on a weighted graph). Note that the byte orders of Java and C++ programs on your machine may be different (big-endians vs. little-endians) so you might need to pay attention to that.
from geminigraph.
Hi, we assume the vertices are numbered from 0. So you need to replace 65535 with 65536 as the number of vertices and then it should work.
from geminigraph.
That helps!
I changed the code to do a decrement of vertex ids when I read them from the file, so it offsets it. The file that I am using starts from index 1 not 0.
from geminigraph.
Related Issues (20)
- Application crash with big input file HOT 2
- Do you have any other algorithm implementations on Gemini? HOT 2
- Error result while performing BFS algorithm HOT 3
- Segmentation Fault when running graph algorithms HOT 8
- Stealing part is missing HOT 3
- Match paper with code HOT 2
- Questions about the message passing and thread HOT 2
- Can I directly run it using mpi HOT 3
- Could u give me an example of edgelist HOT 2
- Newbee question
- Thanks for that! HOT 2
- A confusion about the Co-Scheduling of Gemini HOT 1
- what`s the rusults mean? HOT 1
- `numa_set_interleave_mask` problem HOT 2
- Configure the CPU core and memory parameters HOT 1
- Mbind: Bad address error HOT 1
- may the gcc not surpported
- Segmentation fault HOT 1
- Can this model achieve shortest path counting and betweenness centrality on a weighted graph?
- Consistency check for partition boundaries failed
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from geminigraph.