From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id C6AE4568E for ; Fri, 13 Mar 2015 11:00:13 +0100 (CET) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga103.fm.intel.com with ESMTP; 13 Mar 2015 02:54:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.11,394,1422950400"; d="scan'208";a="679591232" Received: from bricha3-mobl3.ger.corp.intel.com ([10.243.20.28]) by fmsmga001.fm.intel.com with SMTP; 13 Mar 2015 03:00:08 -0700 Received: by (sSMTP sendmail emulation); Fri, 13 Mar 2015 10:00:07 +0025 Date: Fri, 13 Mar 2015 10:00:07 +0000 From: Bruce Richardson To: Takuya ASADA Message-ID: <20150313100007.GB5056@bricha3-MOBL3> References: <1426194348-4406-1-git-send-email-syuu@cloudius-systems.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1426194348-4406-1-git-send-email-syuu@cloudius-systems.com> Organization: Intel Shannon Ltd. User-Agent: Mutt/1.5.23 (2014-03-12) Cc: dev@dpdk.org Subject: Re: [dpdk-dev] [RFC PATCH 0/7] add OSv support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 13 Mar 2015 10:00:14 -0000 On Fri, Mar 13, 2015 at 06:05:41AM +0900, Takuya ASADA wrote: > Hi DPDK developers, > > I'd like to contribute a new EAL to support our open-sourced operating system called "OSv". > It is a new operating system build from scratch for cloud computing, to run application faster with lower footprint on IaaS. > Unlike general propose OS, it is a library OS designed to run single application per one instance, everything run in kernel mode, single memory space. > It's not using Linux kernel but has compatibility with Linux application, not perfect but we already supported various applications such as Cassandra, memcached, Redis, etc. > > In DPDK case, PMDs can access devices directly, without kernel driver help. > At this point I haven't enough optimized performance of the EAL yet, but it has potential to get better performance than Linux with fewer resources. > > OSv web site: http://osv.io > USENIX ATC'14 paper: https://www.usenix.org/conference/atc14/technical-sessions/presentation/kivity This sounds really interesting. Any chance of adding in a "Getting Started Guide" with your patchset to make it easy for us to try out DPDK on OSv? > > Takuya ASADA (7): > mk: support compiling C++ code > eal: Add extern C on eal_hugepages.h > eal: Add extern C on eal_thread.h > eal: Add extern C on eal_private.h > add OSv support > virtio: enable MSI-X on OSv > app/test: support OSv > > app/test/test_eal_flags.c | 34 +-- > app/test/test_timer_perf.c | 2 +- > config/{common_linuxapp => common_osvapp} | 20 +- > ...xapp-gcc => defconfig_x86_64-native-osvapp-gcc} | 2 +- > lib/librte_eal/Makefile | 2 + > lib/librte_eal/common/eal_hugepages.h | 8 + > lib/librte_eal/common/eal_private.h | 8 + > lib/librte_eal/common/eal_thread.h | 8 + > Makefile => lib/librte_eal/osvapp/Makefile | 5 +- > lib/librte_eal/osvapp/eal/Makefile | 115 ++++++++ > lib/librte_eal/{linuxapp => osvapp}/eal/eal.c | 123 +------- > .../{linuxapp => osvapp}/eal/eal_alarm.c | 0 > .../{linuxapp => osvapp}/eal/eal_debug.c | 0 > lib/librte_eal/osvapp/eal/eal_hugepage_info.cc | 63 +++++ > .../{bsdapp => osvapp}/eal/eal_interrupts.c | 0 > .../eal/eal_lcore.c => osvapp/eal/eal_lcore.cc} | 53 ++-- > lib/librte_eal/{bsdapp => osvapp}/eal/eal_log.c | 0 > lib/librte_eal/osvapp/eal/eal_memory.cc | 148 ++++++++++ > lib/librte_eal/osvapp/eal/eal_pci.cc | 311 +++++++++++++++++++++ > .../{linuxapp => osvapp}/eal/eal_thread.c | 0 > lib/librte_eal/osvapp/eal/eal_timer.c | 121 ++++++++ > .../eal/include/exec-env/rte_interrupts.h | 0 > lib/librte_pmd_virtio/virtio_ethdev.c | 15 +- > mk/exec-env/{linuxapp => osvapp}/rte.app.mk | 0 > mk/exec-env/{linuxapp => osvapp}/rte.vars.mk | 6 +- > mk/internal/rte.compile-pre.mk | 41 ++- > mk/target/generic/rte.vars.mk | 4 + > mk/toolchain/gcc/rte.vars.mk | 5 +- > 28 files changed, 907 insertions(+), 187 deletions(-) > copy config/{common_linuxapp => common_osvapp} (97%) > copy config/{defconfig_x86_64-native-linuxapp-gcc => defconfig_x86_64-native-osvapp-gcc} (98%) > copy Makefile => lib/librte_eal/osvapp/Makefile (93%) > create mode 100644 lib/librte_eal/osvapp/eal/Makefile > copy lib/librte_eal/{linuxapp => osvapp}/eal/eal.c (87%) > copy lib/librte_eal/{linuxapp => osvapp}/eal/eal_alarm.c (100%) > copy lib/librte_eal/{linuxapp => osvapp}/eal/eal_debug.c (100%) > create mode 100644 lib/librte_eal/osvapp/eal/eal_hugepage_info.cc > copy lib/librte_eal/{bsdapp => osvapp}/eal/eal_interrupts.c (100%) > copy lib/librte_eal/{bsdapp/eal/eal_lcore.c => osvapp/eal/eal_lcore.cc} (80%) > copy lib/librte_eal/{bsdapp => osvapp}/eal/eal_log.c (100%) > create mode 100644 lib/librte_eal/osvapp/eal/eal_memory.cc > create mode 100644 lib/librte_eal/osvapp/eal/eal_pci.cc > copy lib/librte_eal/{linuxapp => osvapp}/eal/eal_thread.c (100%) > create mode 100644 lib/librte_eal/osvapp/eal/eal_timer.c > copy lib/librte_eal/{bsdapp => osvapp}/eal/include/exec-env/rte_interrupts.h (100%) > copy mk/exec-env/{linuxapp => osvapp}/rte.app.mk (100%) > copy mk/exec-env/{linuxapp => osvapp}/rte.vars.mk (95%) > > -- > 2.1.0 >