On Wed, 15 Sep 2010 10:02:35 +0200 Ingo Molnar <mingo@xxxxxxx> wrote: > > What did those OpenMPI facilities use before your patch - shared > memory or sockets? This comparison is against OpenMPI using the shared memory btl. > I have an observation about the interface: > > A small detail: 'int flags' should probably be 'unsigned long flags' > - it leaves more space. ok. > Also, note that there is a further performance optimization possible > here: if the other task's ->mm is the same as this task's (they share > the MM), then the copy can be done straight in this process context, > without GUP. User-space might not necessarily be aware of this so it > might make sense to express this special case in the kernel too. ok. > More fundamentally, wouldnt it make sense to create an iovec > interface here? If the Gather(v) / Scatter(v) / AlltoAll(v) workloads > have any fragmentation on the user-space buffer side then the copy of > multiple areas could be done in a single syscall. (the MM lock has to > be touched only once, target task only be looked up only once, etc.) yes, I think so. Currently where I'm using the interface in OpenMPI I can't take advantage of this, but it could be changed in the future- and its likely other MPI's could take advantage of it already. > Plus, a small naming detail, shouldnt the naming be more IO like: > > sys_process_vm_read() > sys_process_vm_write() Yes, that looks better to me. I really wasn't sure how to name them. Regards, Chris -- cyeoh@xxxxxxxxxx -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxxx For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>