iHeartGraph / Graphene

Graphene: Fine-Grained IO Management for Graph Computing. FAST'17
GNU General Public License v3.0
20 stars 23 forks source link

A problem about how to execute program #1

Open shanyux opened 6 years ago

shanyux commented 6 years ago

There are too many parameters to understand, can you give detailed explanations about each parameter and provide a template for executing some program? Thanks a lot!

asherliu commented 6 years ago

The graph should be partitioned into nRowXnCol partitions. Here, nRowXnCol should equal to the amount of disks used in this test. Converter should be able to partition the graph. Assuming you want to partition the twitter graph into 4x4 (16) partitions. The processed graph should be twttier_beg_0_0_of_4x4.bin, twitter_csr_0_0_of_4x4.bin, ..., twttierbeg(nRow-1)_(nCol-1)_of_4x4.bin, twttiercsr(nRow-1)_(nCol-1)_of_4x4.bin.

Similarly, the disk should be attached towards following points row_0_col_0, row_0_col_1, ..., row_0col(nCol-1); row_1_col_0, row_1_col_1, ..., row_1col(nCol-1); ....; row_(nRow-1)_col0, ..., row(nRow-1)col(nCol -1)

Afterwards, you should map your graph partitions into these disk attach point accordingly. For instance, twttier_beg_0x0.bin, twitter_csr_0x0.bin should belong to disk_0x0 ...

Afterwards, you should be able to run graphene.

This is a little bit complex. Here shows the naming format.

I will post a tutorial about how ot use this system shortly.

shanyux commented 6 years ago

Thank you for your reply!I also have some questions. There are the implementation parameters of pagerank.

_std::cout<<"Format: /path/to/exe " <<"#row_partitions #col_partitions thread_count " <<"/path/to/beg_pos_dir /path/to/csr_dir " <<"beg_header csr_header num_chunks " <<"chunk_sz (#bytes) concurr_IO_ctx " <<"max_continuous_useless_blk ring_vert_count numbuffs iteration\n";

I can not understand these parameters. Could you give some explanation? Thanks.