[sheepdog] [sheepdog/sheepdog] b2f441: add -d option for dog cluster info

Hitoshi Mitake mitake.hitoshi at lab.ntt.co.jp
Tue Sep 8 16:52:33 CEST 2015


  Branch: refs/heads/accelio-v1
  Home:   https://github.com/sheepdog/sheepdog
  Commit: b2f44193d43fcb0db0d26c6cb4fb8cc5028feac9
      https://github.com/sheepdog/sheepdog/commit/b2f44193d43fcb0db0d26c6cb4fb8cc5028feac9
  Author: Meng Lingkun <menglingkun at cmss.chinamobile.com>
  Date:   2015-09-08 (Tue, 08 Sep 2015)

  Changed paths:
    M dog/cluster.c

  Log Message:
  -----------
  add -d option for dog cluster info

Dog cluster info with option -d just outputs the changed nodes
between the two adjacent epoches. It's useful in a cluster with
a large amount of nodes. And it would be a way easier to create
a nagios/icinga script that advertises you when something changes
in the cluster and what has changed.

Signed-off-by: Meng Lingkun <menglingkun at cmss.chinamobile.com>
Signed-off-by: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>


  Commit: f33e6918b30af7a4d07826442d0eb8af6d8760ff
      https://github.com/sheepdog/sheepdog/commit/f33e6918b30af7a4d07826442d0eb8af6d8760ff
  Author: hongzhou zhang <hongzhou.h.zhang at intel.com>
  Date:   2015-09-08 (Tue, 08 Sep 2015)

  Changed paths:
    M include/fec.h
    M lib/Makefile.am
    M lib/fec.c
    M lib/isa-l/Makefile.nmake
    M lib/isa-l/erasure_code/Makefile
    M lib/isa-l/erasure_code/ec_base.c
    M lib/isa-l/erasure_code/ec_base.h
    M lib/isa-l/erasure_code/ec_highlevel_func.c
    M lib/isa-l/erasure_code/ec_multibinary.asm
    A lib/isa-l/erasure_code/gf_2vect_dot_prod_avx.asm
    A lib/isa-l/erasure_code/gf_2vect_dot_prod_avx2.asm
    M lib/isa-l/erasure_code/gf_2vect_dot_prod_sse.asm
    M lib/isa-l/erasure_code/gf_2vect_dot_prod_sse_perf.c
    M lib/isa-l/erasure_code/gf_2vect_dot_prod_sse_test.c
    A lib/isa-l/erasure_code/gf_3vect_dot_prod_avx.asm
    A lib/isa-l/erasure_code/gf_3vect_dot_prod_avx2.asm
    M lib/isa-l/erasure_code/gf_3vect_dot_prod_sse.asm
    M lib/isa-l/erasure_code/gf_3vect_dot_prod_sse_perf.c
    M lib/isa-l/erasure_code/gf_3vect_dot_prod_sse_test.c
    A lib/isa-l/erasure_code/gf_4vect_dot_prod_avx.asm
    A lib/isa-l/erasure_code/gf_4vect_dot_prod_avx2.asm
    M lib/isa-l/erasure_code/gf_4vect_dot_prod_sse.asm
    M lib/isa-l/erasure_code/gf_4vect_dot_prod_sse_perf.c
    M lib/isa-l/erasure_code/gf_4vect_dot_prod_sse_test.c
    A lib/isa-l/erasure_code/gf_5vect_dot_prod_avx.asm
    A lib/isa-l/erasure_code/gf_5vect_dot_prod_avx2.asm
    M lib/isa-l/erasure_code/gf_5vect_dot_prod_sse.asm
    M lib/isa-l/erasure_code/gf_5vect_dot_prod_sse_perf.c
    M lib/isa-l/erasure_code/gf_5vect_dot_prod_sse_test.c
    A lib/isa-l/erasure_code/gf_6vect_dot_prod_avx.asm
    A lib/isa-l/erasure_code/gf_6vect_dot_prod_avx2.asm
    M lib/isa-l/erasure_code/gf_6vect_dot_prod_sse.asm
    M lib/isa-l/erasure_code/gf_6vect_dot_prod_sse_perf.c
    M lib/isa-l/erasure_code/gf_6vect_dot_prod_sse_test.c
    M lib/isa-l/erasure_code/gf_inverse_test.c
    M lib/isa-l/erasure_code/gf_vect_dot_prod_1tbl.c
    A lib/isa-l/erasure_code/gf_vect_dot_prod_avx.asm
    A lib/isa-l/erasure_code/gf_vect_dot_prod_avx2.asm
    A lib/isa-l/erasure_code/gf_vect_dot_prod_avx_perf.c
    A lib/isa-l/erasure_code/gf_vect_dot_prod_avx_test.c
    M lib/isa-l/erasure_code/gf_vect_dot_prod_base_test.c
    M lib/isa-l/erasure_code/gf_vect_dot_prod_perf.c
    M lib/isa-l/erasure_code/gf_vect_dot_prod_sse.asm
    M lib/isa-l/erasure_code/gf_vect_dot_prod_sse_perf.c
    M lib/isa-l/erasure_code/gf_vect_dot_prod_sse_test.c
    M lib/isa-l/erasure_code/gf_vect_dot_prod_test.c
    M lib/isa-l/erasure_code/gf_vect_mul_avx.asm
    M lib/isa-l/erasure_code/gf_vect_mul_avx_perf.c
    M lib/isa-l/erasure_code/gf_vect_mul_avx_test.c
    M lib/isa-l/erasure_code/gf_vect_mul_base_test.c
    M lib/isa-l/erasure_code/gf_vect_mul_perf.c
    M lib/isa-l/erasure_code/gf_vect_mul_sse.asm
    M lib/isa-l/erasure_code/gf_vect_mul_sse_perf.c
    M lib/isa-l/erasure_code/gf_vect_mul_sse_test.c
    M lib/isa-l/erasure_code/gf_vect_mul_test.c
    M lib/isa-l/include/erasure_code.h
    M lib/isa-l/include/reg_sizes.asm

  Log Message:
  -----------
  Upgrade ISA-L erasure code to support AVX/AVX2 instructions on new x86_64 platforms.

Signed-off-by: hongzhou zhang <hongzhou.h.zhang at intel.com>


  Commit: b4f2b35c532167b9b6388c2feee24187ffbe86c5
      https://github.com/sheepdog/sheepdog/commit/b4f2b35c532167b9b6388c2feee24187ffbe86c5
  Author: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
  Date:   2015-09-08 (Tue, 08 Sep 2015)

  Changed paths:
    M include/fec.h

  Log Message:
  -----------
  isa-l: remove build warning

This commit removes build warnings like below:

  CC       net.o
In file included from ../include/internal_proto.h:25:0,
           from ../include/sheep.h:16,
           from net.c:31:
../include/fec.h: In function ‘ec_encode’:
../include/fec.h:175:6: warning: variable ‘pidx’ set but not used [-Wunused-but-set-variable]
  int pidx[p];

Signed-off-by: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>


  Commit: 43cc72d2f9f02014de81f2510368d2175c87b6cb
      https://github.com/sheepdog/sheepdog/commit/43cc72d2f9f02014de81f2510368d2175c87b6cb
  Author: hongzhou zhang <hongzhou.h.zhang at intel.com>
  Date:   2015-09-08 (Tue, 08 Sep 2015)

  Changed paths:
    M lib/isa-l/erasure_code/ec_multibinary.asm

  Log Message:
  -----------
  Remove warning erasure_code/ec_multibinary.asm:255: warning: redefining multi-line macro `slversion'

Signed-off-by: hongzhou zhang <hongzhou.h.zhang at intel.com>


  Commit: 3c3aab441758ba7d7936db3b590f415245fe41dc
      https://github.com/sheepdog/sheepdog/commit/3c3aab441758ba7d7936db3b590f415245fe41dc
  Author: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
  Date:   2015-09-08 (Tue, 08 Sep 2015)

  Changed paths:
    M MAINTAINERS

  Log Message:
  -----------
  MAINTAINERS: add hongzhou zhang as a subsystem maintainer of isa-l

Signed-off-by: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>


  Commit: 0822d7f47743b7f476124e621a010a9668f5087b
      https://github.com/sheepdog/sheepdog/commit/0822d7f47743b7f476124e621a010a9668f5087b
  Author: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>
  Date:   2015-09-08 (Tue, 08 Sep 2015)

  Changed paths:
    M configure.ac
    M dog/Makefile.am
    M dog/common.c
    M dog/dog.c
    M dog/dog.h
    M include/internal_proto.h
    M include/net.h
    A include/xio.h
    M lib/Makefile.am
    A lib/xio.c
    M sheep/Makefile.am
    M sheep/gateway.c
    M sheep/request.c
    M sheep/sheep.c
    M sheep/sheep_priv.h
    A sheep/xio.c
    M shepherd/Makefile.am

  Log Message:
  -----------
  initial accelio support

This patch adds a support of accelio, an library of RPC which wraps
TCP and RDMA in clean way, to sheepdog. With this change, sheepdog
will be able to utilize high speed interconnect like infiniband.

The code is very early stage and have bunch of ToDos. However, I'd
like to share it and want the community to help the implementation.

How to build:
 1. install accelio
 2. ./configure --enable-accelio
 3. make

How to use:
 $ sheep -i transport=rdma,addr=xxx,port=yyy ...

Minor ToDos:
 - clean up code (e.g. comment out)
 - remove known segfault bugs
 - sane error handling
 - remove memory leaks

Major ToDos:
 - enhance code for utilizing RDMA
 - rx/tx in worker threads (I'm not sure it is effective because RDMA
   helps to reduce CPU consumption)

Signed-off-by: Hitoshi Mitake <mitake.hitoshi at lab.ntt.co.jp>


Compare: https://github.com/sheepdog/sheepdog/compare/b2f44193d43f^...0822d7f47743


More information about the sheepdog mailing list