From mboxrd@z Thu Jan 1 00:00:00 1970 From: James Bottomley Subject: Re: [Devel] Re: [PATCH v3 13/28] slub: create duplicate cache Date: Wed, 30 May 2012 07:28:26 +0000 Message-ID: <1338362906.3229.4.camel@dabdike> References: <4FC501E9.60607@parallels.com> <4FC506E6.8030108@parallels.com> <4FC52612.5060006@parallels.com> <4FC52CC6.7020109@parallels.com> <4FC530C0.30509@parallels.com> <20120530012955.GA4854@google.com> Mime-Version: 1.0 Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20120530012955.GA4854-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org> Content-Language: en-US Content-ID: <09D17D0C0938FA4987E8804C68CDC32A-ruSsrxOD6xDby3iVrkZq2A@public.gmane.org> Sender: cgroups-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org List-ID: Content-Type: text/plain; charset="us-ascii" To: Tejun Heo Cc: Glauber Costa , Suleiman Souhlal , David Rientjes , Pekka Enberg , Johannes Weiner , "linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Michal Hocko , "linux-mm-Bw31MaZKKs3YtjvyW6yDsg@public.gmane.org" , Li Zefan , "devel-GEFAQzZX7r8dnm+yROfE0A@public.gmane.org" , Greg Thelen , "cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org" , Christoph Lameter , "kamezawa.hiroyu-+CUm20s59erQFUHtdCDX3A@public.gmane.org" T24gV2VkLCAyMDEyLTA1LTMwIGF0IDEwOjI5ICswOTAwLCBUZWp1biBIZW8gd3JvdGU6DQo+IEhl bGxvLCBDaHJpc3RvcGgsIEdsYXViZXIuDQo+IA0KPiBPbiBXZWQsIE1heSAzMCwgMjAxMiBhdCAx MjoyNTozNkFNICswNDAwLCBHbGF1YmVyIENvc3RhIHdyb3RlOg0KPiA+ID5XZSBoYXZlIG5ldmVy IHdvcmtlZCBjb250YWluZXIgbGlrZSBsb2dpYyBsaWtlIHRoYXQgaW4gdGhlIGtlcm5lbCBkdWUg dG8NCj4gPiA+dGhlIGNvbXBsaWNhdGVkIGxvZ2ljIHlvdSB3b3VsZCBoYXZlIHRvIHB1dCBpbi4g VGhlIHJlcXVpcmVtZW50IHRoYXQgYWxsDQo+ID4gPm9iamVjdHMgaW4gYSBwYWdlIGNvbWUgZnJv bSB0aGUgc2FtZSBjb250YWluZXIgaXMgbm90IG5lY2Vzc2FyeS4gSWYgeW91DQo+ID4gPmRyb3Ag dGhpcyBub3Rpb24gdGhlbiB0aGluZ3MgYmVjb21lIHZlcnkgZWFzeSBhbmQgdGhlIHBhdGNoZXMg d2lsbCBiZWNvbWUNCj4gPiA+c2ltcGxlLg0KPiA+IA0KPiA+IEkgcHJvbWlzZSB0byBsb29rIGF0 IHRoYXQgaW4gbW9yZSBkZXRhaWwgYW5kIGdldCBiYWNrIHRvIGl0LiBJbiB0aGUNCj4gPiBtZWFu dGltZSwgSSB0aGluayBpdCB3b3VsZCBiZSBlbmxpZ2h0ZW5pbmcgdG8gaGVhciBmcm9tIG90aGVy DQo+ID4gcGFydGllcyBhcyB3ZWxsLCBzcGVjaWFsbHkgdGhlIG9uZXMgYWxzbyBkaXJlY3RseSBp bnRlcmVzdGVkIGluDQo+ID4gdXNpbmcgdGhlIHRlY2hub2xvZ3kuDQo+IA0KPiBJIGRvbid0IHRo aW5rIEknbSB0b28gaW50ZXJlc3RlZCBpbiB1c2luZyB0aGUgdGVjaG5vbG9neSA7KSBhbmQNCj4g aGF2ZW4ndCByZWFkIHRoZSBjb2RlIChqdXN0IGdsYW5jZWQgdGhyb3VnaCB0aGUgZGVzY3JpcHRp b25zIGFuZA0KPiBkaXNjdXNzaW9ucyksIGJ1dCwgaW4gZ2VuZXJhbCwgSSB0aGluayB0aGUgYXBw cm9hY2ggb2YgZHVwbGljYXRpbmcNCj4gbWVtb3J5IGFsbG9jYXRvciBwZXItbWVtY2cgaXMgYSBz YW5lIGFwcHJvYWNoLiAgSXQgaXNuJ3QgdGhlIG1vc3QNCj4gZWZmaWNpZW50IG9uZSB3aXRoIHRo ZSBwb3NzaWJpbGl0eSBvZiB3YXN0aW5nIGNvbnNpZGVyYWJsZSBhbW91bnQgb2YNCj4gY2FjaGlu ZyBhcmVhIHBlciBtZW1jZyBidXQgaXQgaXMgc29tZXRoaW5nIHdoaWNoIGNhbiBtb3N0bHkgc3Rh eSBvdXQNCj4gb2YgdGhlIHdheSBpZiBkb25lIHJpZ2h0IGFuZCB0aGF0J3MgaG93IEkgd2FudCBj Z3JvdXAgaW1wbGVtZW50YXRpb25zDQo+IHRvIGJlLg0KDQpFeGFjdGx5OiB3ZSBhdCBwYXJhbGxl bHMgaW5pdGlhbGx5IGRpc2xpa2VkIHRoZSBjZ3JvdXAgbXVsdGlwbGVkIGJ5IHNsYWINCmFwcHJv YWNoIChPdXIgYmVhbmNvdW50ZXJzIGRvIGNvdW50IG9iamVjdHMpIGJlY2F1c2Ugd2UgZmVhcmVk IG1lbW9yeQ0Kd2FzdGFnZSBhbmQgZGVuc2l0eSBpcyB2ZXJ5IGltcG9ydGFudCB0byB1cyAod2hp Y2ggdGVuZHMgdG8gbWVhbg0KZWZmaWNpZW50IHVzZSBvZiBtZW1vcnkpIGhvd2V2ZXIsIHdoZW4g d2UgcmFuIHRocm91Z2ggdGhlIGNhbGN1bGF0aW9ucw0KaW4gUHJhZ3VlLCB5b3UgY2FuIHNob3cg dGhhdCB3ZSBoYXZlIH4yMDAgc2xhYnMgYW5kIGlmIGVhY2ggd2FzdGVzIGhhbGYNCmEgcGFnZSwg dGhhdHMgfjRNQiBtZW1vcnkgbG9zdCBwZXIgY29udGFpbmVyLiAgU2luY2UgbW9zdCB2aXJ0dWFs DQplbnZpcm9ubWVudHMgYXJlIG9mIHRoZSBvcmRlciBub3dhZGF5cyBvZiAwLjVHQiwgd2UgZmVl bCBpdCdzIGFuDQphbm5veWluZyBidXQgYWNjZXB0YWJsZSBwcmljZSB0byBwYXkuDQoNCkphbWVz DQoNCj4gVGhlIHR3byBnb2FscyBmb3IgY2dyb3VwIGNvbnRyb2xsZXJzIHRoYXQgSSB0aGluayBh cmUgaW1wb3J0YW50IGFyZQ0KPiBwcm9wZXIgKG5vLCBub3QgY3JhenkgcGVyZmVjdCBidXQgZ29v ZCBlbm91Z2gpIGlzb2xhdGlvbiBhbmQgYW4NCj4gaW1wbGVtZW50YXRpb24gd2hpY2ggZG9lc24n dCBpbXBhY3QgIWNnIHBhdGggaW4gYW4gaW50cnVzaXZlIG1hbm5lciAtDQo+IGlmIHNvbWVvbmUg d2hvIGRvZXNuJ3QgY2FyZSBhYm91dCBjZ3JvdXAgYnV0IGtub3dzIGFuZCB3YW50cyB0byB3b3Jr DQo+IG9uIHRoZSBzdWJzeXN0ZW0gc2hvdWxkIGJlIGFibGUgdG8gbW9zdGx5IGlnbm9yZSBjZ3Jv dXAgc3VwcG9ydC4gIElmDQo+IHRoYXQgbWVhbnMgb3ZlcmhlYWQgZm9yIGNncm91cCB1c2Vycywg c28gYmUgaXQuDQo+IA0KPiBXaXRob3V0IGxvb2tpbmcgYXQgdGhlIGFjdHVhbCBjb2RlLCBteSBy YWluYm93LWZhcnRpbmcgdW5pY29ybiBoZXJlDQo+IHdvdWxkIGJlIGhhdmluZyBhIGNvbW1vbiBz bFhiIGludGVyZmFjZSBsYXllciB3aGljaCBoYW5kbGVzDQo+IGludGVyZmFjaW5nIHdpdGggbWVt b3J5IGFsbG9jYXRvciB1c2VycyBhbmQgY2dyb3VwIGFuZCBsZXQgc2xYYg0KPiBpbXBsZW1lbnQg dGhlIHNhbWUgYmFja2VuZCBpbnRlcmZhY2Ugd2hpY2ggZG9lc24ndCBjYXJlIC8ga25vdyBhYm91 dA0KPiBjZ3JvdXAgYXQgYWxsIChvdGhlciB0aGFuIHVzaW5nIHRoZSBjb3JyZWN0IGFsbG9jYXRp b24gY29udGV4dCwgdGhhdA0KPiBpcykuICBHbGF1YmVyLCB3b3VsZCBzb21ldGhpbmcgbGlrZSB0 aGF0IGJlIHBvc3NpYmxlPw0KPiANCj4gVGhhbmtzLg0KPiANCg0K From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from psmtp.com (na3sys010amx160.postini.com [74.125.245.160]) by kanga.kvack.org (Postfix) with SMTP id 323096B005C for ; Wed, 30 May 2012 03:29:00 -0400 (EDT) From: James Bottomley Subject: Re: [Devel] Re: [PATCH v3 13/28] slub: create duplicate cache Date: Wed, 30 May 2012 07:28:26 +0000 Message-ID: <1338362906.3229.4.camel@dabdike> References: <4FC501E9.60607@parallels.com> <4FC506E6.8030108@parallels.com> <4FC52612.5060006@parallels.com> <4FC52CC6.7020109@parallels.com> <4FC530C0.30509@parallels.com> <20120530012955.GA4854@google.com> In-Reply-To: <20120530012955.GA4854@google.com> Content-Language: en-US Content-Type: text/plain; charset="utf-8" Content-ID: <09D17D0C0938FA4987E8804C68CDC32A@sw.swsoft.com> Content-Transfer-Encoding: base64 MIME-Version: 1.0 Sender: owner-linux-mm@kvack.org List-ID: To: Tejun Heo Cc: Glauber Costa , Suleiman Souhlal , David Rientjes , Pekka Enberg , Johannes Weiner , "linux-kernel@vger.kernel.org" , Michal Hocko , "linux-mm@kvack.org" , Li Zefan , "devel@openvz.org" , Greg Thelen , "cgroups@vger.kernel.org" , Christoph Lameter , "kamezawa.hiroyu@jp.fujitsu.com" T24gV2VkLCAyMDEyLTA1LTMwIGF0IDEwOjI5ICswOTAwLCBUZWp1biBIZW8gd3JvdGU6DQo+IEhl bGxvLCBDaHJpc3RvcGgsIEdsYXViZXIuDQo+IA0KPiBPbiBXZWQsIE1heSAzMCwgMjAxMiBhdCAx MjoyNTozNkFNICswNDAwLCBHbGF1YmVyIENvc3RhIHdyb3RlOg0KPiA+ID5XZSBoYXZlIG5ldmVy IHdvcmtlZCBjb250YWluZXIgbGlrZSBsb2dpYyBsaWtlIHRoYXQgaW4gdGhlIGtlcm5lbCBkdWUg dG8NCj4gPiA+dGhlIGNvbXBsaWNhdGVkIGxvZ2ljIHlvdSB3b3VsZCBoYXZlIHRvIHB1dCBpbi4g VGhlIHJlcXVpcmVtZW50IHRoYXQgYWxsDQo+ID4gPm9iamVjdHMgaW4gYSBwYWdlIGNvbWUgZnJv bSB0aGUgc2FtZSBjb250YWluZXIgaXMgbm90IG5lY2Vzc2FyeS4gSWYgeW91DQo+ID4gPmRyb3Ag dGhpcyBub3Rpb24gdGhlbiB0aGluZ3MgYmVjb21lIHZlcnkgZWFzeSBhbmQgdGhlIHBhdGNoZXMg d2lsbCBiZWNvbWUNCj4gPiA+c2ltcGxlLg0KPiA+IA0KPiA+IEkgcHJvbWlzZSB0byBsb29rIGF0 IHRoYXQgaW4gbW9yZSBkZXRhaWwgYW5kIGdldCBiYWNrIHRvIGl0LiBJbiB0aGUNCj4gPiBtZWFu dGltZSwgSSB0aGluayBpdCB3b3VsZCBiZSBlbmxpZ2h0ZW5pbmcgdG8gaGVhciBmcm9tIG90aGVy DQo+ID4gcGFydGllcyBhcyB3ZWxsLCBzcGVjaWFsbHkgdGhlIG9uZXMgYWxzbyBkaXJlY3RseSBp bnRlcmVzdGVkIGluDQo+ID4gdXNpbmcgdGhlIHRlY2hub2xvZ3kuDQo+IA0KPiBJIGRvbid0IHRo aW5rIEknbSB0b28gaW50ZXJlc3RlZCBpbiB1c2luZyB0aGUgdGVjaG5vbG9neSA7KSBhbmQNCj4g aGF2ZW4ndCByZWFkIHRoZSBjb2RlIChqdXN0IGdsYW5jZWQgdGhyb3VnaCB0aGUgZGVzY3JpcHRp b25zIGFuZA0KPiBkaXNjdXNzaW9ucyksIGJ1dCwgaW4gZ2VuZXJhbCwgSSB0aGluayB0aGUgYXBw cm9hY2ggb2YgZHVwbGljYXRpbmcNCj4gbWVtb3J5IGFsbG9jYXRvciBwZXItbWVtY2cgaXMgYSBz YW5lIGFwcHJvYWNoLiAgSXQgaXNuJ3QgdGhlIG1vc3QNCj4gZWZmaWNpZW50IG9uZSB3aXRoIHRo ZSBwb3NzaWJpbGl0eSBvZiB3YXN0aW5nIGNvbnNpZGVyYWJsZSBhbW91bnQgb2YNCj4gY2FjaGlu ZyBhcmVhIHBlciBtZW1jZyBidXQgaXQgaXMgc29tZXRoaW5nIHdoaWNoIGNhbiBtb3N0bHkgc3Rh eSBvdXQNCj4gb2YgdGhlIHdheSBpZiBkb25lIHJpZ2h0IGFuZCB0aGF0J3MgaG93IEkgd2FudCBj Z3JvdXAgaW1wbGVtZW50YXRpb25zDQo+IHRvIGJlLg0KDQpFeGFjdGx5OiB3ZSBhdCBwYXJhbGxl bHMgaW5pdGlhbGx5IGRpc2xpa2VkIHRoZSBjZ3JvdXAgbXVsdGlwbGVkIGJ5IHNsYWINCmFwcHJv YWNoIChPdXIgYmVhbmNvdW50ZXJzIGRvIGNvdW50IG9iamVjdHMpIGJlY2F1c2Ugd2UgZmVhcmVk IG1lbW9yeQ0Kd2FzdGFnZSBhbmQgZGVuc2l0eSBpcyB2ZXJ5IGltcG9ydGFudCB0byB1cyAod2hp Y2ggdGVuZHMgdG8gbWVhbg0KZWZmaWNpZW50IHVzZSBvZiBtZW1vcnkpIGhvd2V2ZXIsIHdoZW4g d2UgcmFuIHRocm91Z2ggdGhlIGNhbGN1bGF0aW9ucw0KaW4gUHJhZ3VlLCB5b3UgY2FuIHNob3cg dGhhdCB3ZSBoYXZlIH4yMDAgc2xhYnMgYW5kIGlmIGVhY2ggd2FzdGVzIGhhbGYNCmEgcGFnZSwg dGhhdHMgfjRNQiBtZW1vcnkgbG9zdCBwZXIgY29udGFpbmVyLiAgU2luY2UgbW9zdCB2aXJ0dWFs DQplbnZpcm9ubWVudHMgYXJlIG9mIHRoZSBvcmRlciBub3dhZGF5cyBvZiAwLjVHQiwgd2UgZmVl bCBpdCdzIGFuDQphbm5veWluZyBidXQgYWNjZXB0YWJsZSBwcmljZSB0byBwYXkuDQoNCkphbWVz DQoNCj4gVGhlIHR3byBnb2FscyBmb3IgY2dyb3VwIGNvbnRyb2xsZXJzIHRoYXQgSSB0aGluayBh cmUgaW1wb3J0YW50IGFyZQ0KPiBwcm9wZXIgKG5vLCBub3QgY3JhenkgcGVyZmVjdCBidXQgZ29v ZCBlbm91Z2gpIGlzb2xhdGlvbiBhbmQgYW4NCj4gaW1wbGVtZW50YXRpb24gd2hpY2ggZG9lc24n dCBpbXBhY3QgIWNnIHBhdGggaW4gYW4gaW50cnVzaXZlIG1hbm5lciAtDQo+IGlmIHNvbWVvbmUg d2hvIGRvZXNuJ3QgY2FyZSBhYm91dCBjZ3JvdXAgYnV0IGtub3dzIGFuZCB3YW50cyB0byB3b3Jr DQo+IG9uIHRoZSBzdWJzeXN0ZW0gc2hvdWxkIGJlIGFibGUgdG8gbW9zdGx5IGlnbm9yZSBjZ3Jv dXAgc3VwcG9ydC4gIElmDQo+IHRoYXQgbWVhbnMgb3ZlcmhlYWQgZm9yIGNncm91cCB1c2Vycywg c28gYmUgaXQuDQo+IA0KPiBXaXRob3V0IGxvb2tpbmcgYXQgdGhlIGFjdHVhbCBjb2RlLCBteSBy YWluYm93LWZhcnRpbmcgdW5pY29ybiBoZXJlDQo+IHdvdWxkIGJlIGhhdmluZyBhIGNvbW1vbiBz bFhiIGludGVyZmFjZSBsYXllciB3aGljaCBoYW5kbGVzDQo+IGludGVyZmFjaW5nIHdpdGggbWVt b3J5IGFsbG9jYXRvciB1c2VycyBhbmQgY2dyb3VwIGFuZCBsZXQgc2xYYg0KPiBpbXBsZW1lbnQg dGhlIHNhbWUgYmFja2VuZCBpbnRlcmZhY2Ugd2hpY2ggZG9lc24ndCBjYXJlIC8ga25vdyBhYm91 dA0KPiBjZ3JvdXAgYXQgYWxsIChvdGhlciB0aGFuIHVzaW5nIHRoZSBjb3JyZWN0IGFsbG9jYXRp b24gY29udGV4dCwgdGhhdA0KPiBpcykuICBHbGF1YmVyLCB3b3VsZCBzb21ldGhpbmcgbGlrZSB0 aGF0IGJlIHBvc3NpYmxlPw0KPiANCj4gVGhhbmtzLg0KPiANCg0K -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: email@kvack.org From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757067Ab2E3H3A (ORCPT ); Wed, 30 May 2012 03:29:00 -0400 Received: from mx2.parallels.com ([64.131.90.16]:49446 "EHLO mx2.parallels.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757007Ab2E3H26 (ORCPT ); Wed, 30 May 2012 03:28:58 -0400 From: James Bottomley To: Tejun Heo CC: Glauber Costa , Suleiman Souhlal , David Rientjes , Pekka Enberg , Johannes Weiner , "linux-kernel@vger.kernel.org" , Michal Hocko , "linux-mm@kvack.org" , Li Zefan , "devel@openvz.org" , Greg Thelen , "cgroups@vger.kernel.org" , Christoph Lameter , "kamezawa.hiroyu@jp.fujitsu.com" Subject: Re: [Devel] Re: [PATCH v3 13/28] slub: create duplicate cache Thread-Topic: [Devel] Re: [PATCH v3 13/28] slub: create duplicate cache Thread-Index: AQHNPakBQH1c2qpSQ0a8B2BucL44lpbhYTeAgAACfACAABDmgIAABW8AgAAAgwCAACFAAIAAA+kAgAAEaYCAAAOUAIAAA4mAgAABNQCAAFUGgIAAZCwA Date: Wed, 30 May 2012 07:28:26 +0000 Message-ID: <1338362906.3229.4.camel@dabdike> References: <4FC501E9.60607@parallels.com> <4FC506E6.8030108@parallels.com> <4FC52612.5060006@parallels.com> <4FC52CC6.7020109@parallels.com> <4FC530C0.30509@parallels.com> <20120530012955.GA4854@google.com> In-Reply-To: <20120530012955.GA4854@google.com> Accept-Language: en-GB, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [195.214.232.10] Content-Type: text/plain; charset="utf-8" Content-ID: <09D17D0C0938FA4987E8804C68CDC32A@sw.swsoft.com> MIME-Version: 1.0 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by nfs id q4U7T7WV031248 On Wed, 2012-05-30 at 10:29 +0900, Tejun Heo wrote: > Hello, Christoph, Glauber. > > On Wed, May 30, 2012 at 12:25:36AM +0400, Glauber Costa wrote: > > >We have never worked container like logic like that in the kernel due to > > >the complicated logic you would have to put in. The requirement that all > > >objects in a page come from the same container is not necessary. If you > > >drop this notion then things become very easy and the patches will become > > >simple. > > > > I promise to look at that in more detail and get back to it. In the > > meantime, I think it would be enlightening to hear from other > > parties as well, specially the ones also directly interested in > > using the technology. > > I don't think I'm too interested in using the technology ;) and > haven't read the code (just glanced through the descriptions and > discussions), but, in general, I think the approach of duplicating > memory allocator per-memcg is a sane approach. It isn't the most > efficient one with the possibility of wasting considerable amount of > caching area per memcg but it is something which can mostly stay out > of the way if done right and that's how I want cgroup implementations > to be. Exactly: we at parallels initially disliked the cgroup multipled by slab approach (Our beancounters do count objects) because we feared memory wastage and density is very important to us (which tends to mean efficient use of memory) however, when we ran through the calculations in Prague, you can show that we have ~200 slabs and if each wastes half a page, thats ~4MB memory lost per container. Since most virtual environments are of the order nowadays of 0.5GB, we feel it's an annoying but acceptable price to pay. James > The two goals for cgroup controllers that I think are important are > proper (no, not crazy perfect but good enough) isolation and an > implementation which doesn't impact !cg path in an intrusive manner - > if someone who doesn't care about cgroup but knows and wants to work > on the subsystem should be able to mostly ignore cgroup support. If > that means overhead for cgroup users, so be it. > > Without looking at the actual code, my rainbow-farting unicorn here > would be having a common slXb interface layer which handles > interfacing with memory allocator users and cgroup and let slXb > implement the same backend interface which doesn't care / know about > cgroup at all (other than using the correct allocation context, that > is). Glauber, would something like that be possible? > > Thanks. > {.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I