Re: seastar starting points

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 13/12/2017, Mark Nelson wrote:
[snip]
> That's really exciting!  Josh and Greg mentioned in standup that we wouldn't
> use the seastar memory allocator at all.  Would it be
> difficult/counterproductive to carve out some memory that seastar could
> manage itself while using tcmalloc or whatever for the posix side?

Since the Seastar allocator gets a bunch of memory up-front and
divides it between cores they can do allocations and frees with no
lock contention or system calls. It's pretty fast and we almost
certainly want it, eventually.

It also has backpressure so we can know to throw things out of cache
more aggressively when we're starting to use lots of memory.

So we should plan to turn it on after integration, and maybe run some
tests with it on so eventually we can use it without breaking the
world.

> It seems to me like seastar's desire override new/delete isn't really a good
> long term solution for anyone.

It's unfortunate. It has the nice property that you can just write in
normal looking C++, instead of replacing all your news with something
like new (seastar_alloc) something_t(whatever); or passing allocators
into all your containers.

But it makes cooperation really hard.

(in some ways it makes code-sharing easier, though. Stuff that's
independent of threading and synchronization can just new and delete
and make containers without modification.)

-- 
Senior Software Engineer           Red Hat Storage, Ann Arbor, MI, US
IRC: Aemerson@OFTC, Actinic@Freenode
0x80F7544B90EDBFB9 E707 86BA 0C1B 62CC 152C  7C12 80F7 544B 90ED BFB9
--
To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux