Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752057AbdDAXaI (ORCPT ); Sat, 1 Apr 2017 19:30:08 -0400 Received: from esa5.hgst.iphmx.com ([216.71.153.144]:31796 "EHLO esa5.hgst.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751737AbdDAXaF (ORCPT ); Sat, 1 Apr 2017 19:30:05 -0400 X-IronPort-AV: E=Sophos;i="5.36,259,1486396800"; d="scan'208";a="7558152" Authentication-Results: spf=pass (sender IP is 74.221.232.54) smtp.mailfrom=sandisk.com; osandov.com; dkim=none (message not signed) header.d=none;osandov.com; dmarc=bestguesspass action=none header.from=sandisk.com; X-AuditID: ac1c2133-9afff7000000c960-1d-58e037f56189 From: Bart Van Assche To: "linux-kernel@vger.kernel.org" , "osandov@osandov.com" , "linux-block@vger.kernel.org" , "axboe@fb.com" CC: "kernel-team@fb.com" Subject: Re: [PATCH] blk-mq: add random early detection I/O scheduler Thread-Topic: [PATCH] blk-mq: add random early detection I/O scheduler Thread-Index: AQHSqz/ecmCNSaiNaESg1agFqnaAOA== Date: Sat, 1 Apr 2017 23:29:55 +0000 Message-ID: <1491089381.9734.2.camel@sandisk.com> References: In-Reply-To: Accept-Language: en-US, nl-NL Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.28.1.254] Content-Type: text/plain; charset="utf-8" Content-ID: <0D6B051FCDA3E345A9814D4C1ADFDAD5@sandisk.com> MIME-Version: 1.0 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrKIsWRmVeSWpSXmKPExsWyRobxn+4P8wcRBgdmylj833OMzeJY33tW i723tC0u75rDZrHnyBlGB1aPic3v2D3m/DnI7PF5k1wAcxSXTUpqTmZZapG+XQJXxqwrGQXn BCtOXJ3N2sA4RbCLkZNDQsBEYunPPSxdjFwcQgJLmCT+tN1kBUkICRxllFj2MQ3EZhMwkpg9 AaJIROAco8SG1c8ZQRLMAroSEz73sIDYwgKuEjNO3Qdq5gAqcpP40hsCEhYR0JPo2P2EGcRm EVCR+HL0KNh8XgFDiXM/NrBBLG5llNjYM58NJMEpYCUxd8dNMJtRQFZi8fQWJohd4hK3nsxn grhaQGLJnvPMELaoxMvH/1ghbAWJzyv+sYHcwCygKbF+lz5Eq5XE9sW9UGMUJaZ0P2SHuEFQ 4uTMJywTGMVmIdkwC6F7FpLuWUi6ZyHpXsDIuopRrDgxuTg3PbXA0ESvODEvJbM4Wy85P3cT IzjyFI13MP7b4H6IUYCDUYmH1+PF/Qgh1sSy4srcQ4wSHMxKIry1T4BCvCmJlVWpRfnxRaU5 qcWHGKU5WJTEeWNmT40QEkhPLEnNTk0tSC2CyTJxcEo1MHpMfXVYbHb714di9fXx/77/Otgm vWpuoyubZ3DD4bIW0ePupltKIncEzctXiJ/rLm/Oflpm9tL0e9yyC9s6OSZenHttwudvlmKr 5qdYvriaVJ1yuGNR7+qVE/5Ez//jXi3YylohUfBR4I7D+9Mt9psfqsbcsOJN+HF+otXBpzrf fRae3iE66ZQSS3FGoqEWc1FxIgDZaipnuAIAAA== X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:74.221.232.54;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(39850400002)(39840400002)(39410400002)(39400400002)(39860400002)(39450400003)(2980300002)(438002)(377424004)(189002)(24454002)(199003)(377454003)(9170700003)(189998001)(4326008)(229853002)(38730400002)(81166006)(6246003)(53546009)(2906002)(2950100002)(2501003)(47776003)(2900100001)(23676002)(5660300001)(2201001)(8936002)(86362001)(8676002)(5250100002)(103116003)(76176999)(106466001)(50986999)(54356999)(50466002)(36756003)(102836003)(53936002)(3846002)(33646002)(305945005)(356003)(6116002)(7736002);DIR:OUT;SFP:1102;SCL:1;SRVR:DM2PR04MB398;H:sacsmgep14.sandisk.com;FPR:;SPF:Pass;MLV:sfv;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;CO1NAM04FT060;1:t/jstZs7tJgZJ8NpJt6TIerd6OlptHbdWm/tgFI3mNl8n30ivaFlbaiGlr3hkVQHEvVXIIyZi1bM0gdTztf3woppMsbaabsZ1iYahG53b8zJdKxeaCnMD8PTSznrIx11CGCtRGkrKa33lyVPDJfMWGjHPfGNvv0Xo9FbPo16Qix9b/dg3D/5Cs3mtbWDDGNZPI2i4X+CSwq4MEIGmV9PQrku3mYlARtXD9QJi4CF2BNCk6goOVZZb3+5N2dM+AyM2+hpVSDVcz/Ei7OYaclZviJUCMdNEMIGJVBU0O7zscFQIRMnIENigT9qF/0rl64tfks8auBOfY9+LyufJVYO9cOh7SBWoepqfHk6gw0E6ad73pGwe59pNqYnjOX6UiQqgJtcQe/DHwShCqq9V7DdZ6kHdj5/zILS74eoatBnCOYX4G8ZqsVAXoZfD3X8J+bUveQjaP9NokaugrRVtkMeYumvQcv3KF9gH+gWRY6S4J+ZuJgyWv1Zbs3sr9Y1cmh06aHgnHn4WCTybmlfJVnPXmKXxRH4HUODru+jmFO9vr5gPuZC/Hxrk7hJoLiDPgo2RlAeD7avavJ+Z5xwfvf1Sg== X-MS-Office365-Filtering-Correlation-Id: d693a7d7-3d32-4066-112d-08d4795704ef X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001)(8251501002)(2017030254075)(201703131423075)(201703031133081);SRVR:DM2PR04MB398; X-Microsoft-Exchange-Diagnostics: 1;DM2PR04MB398;3:7qfTHOAUc7nLtebYKzp7pKwFGBD+LJaizE44iwAnbU5HWF38ZQx/tOoR7eBRKpI+HFLj2c8VSqM9ECqNbjhWNwQ/sjeUw4IEj90ciYA3SjCUBAZp/hzpwUYvhpKOtLT1aAEsEVJWjT0jV3QnPr/KmGPtTOgXWypGYB9t8bUrtufe6oIyGDrFmBfZKZqOtg2LoU9K6bt7bjPIhsMniqTYrASOgcSHTiHkvwIydnjGEFQGieeJd9y1+NJ7KTe8V4ImukdBGqd3YAUWFLLyzOs36/nOY95tSFajLPOUnxPY5E5nGYt2+f8POQiGH15h6ynBGtdQB12Az+0YY+kpxwVnzDC665J7h1hof/bv6EdIQmeNeCjYb8HnS5ZpIcT/bgAS8REPWKT16SJuN8p99zeC6xBfVi04s1mjNmY6lUNIrsNTZUX5lIS1DCxpYZpI8KMoDmLdcVz66YZ2IvGIp91AzP3R5KACscv3j57lFbIKKMqdCYDU16s9CLZVGYCRBSnC X-Microsoft-Exchange-Diagnostics: 1;DM2PR04MB398;25:PzTmIC/1Wuirn215OwX9A9DyUr48sX+MCCjBgeyD/hpCGv+u4Edhj9XhbPcnhPMmy/sYXGngkHERXVjMoWhGX0CVC1ggvxMK2NuL5T6SfQfKP8Bdr/cio4GDT2gch0r7qMTsSi7p0gcqGkw7Ya5NH9F5xRLqOYy3V7iWSXvHpqR9mxeblTu/i2ir21SO9dc4AzQ5E3+XEsuP1oJjcsZQXG+uzK4R+58bWtHVUaK9uQVEYSXNPtGPCY8uzWlxVb/8pJYli9SvPeE3aYMsTSz0YBIkjm09+QNgE2QQVZ1ujvcFhMKDdf1zzN+yhe+UYARAtlj3xyX0QDmfiaJW0vvIo8a/MFg6Py+GlZ+fgbbrUHURBLC4qzCDz8gea1Zf1ePCQgD3JbJZRQoct/65W3SXRbowyCEaNkLlh+UlXf0CU25Z5FLV0n/j+OxFUZtp71pr898o7youYW+g1OMsWoyIjQ==;31:Rn8EJm50aPe6q+0f2aN91oXWf45jq4OTqZKMWukR4A7GtIf2YZRBIu8iIpl8iF43vqzCZcfJ/ICv2kXcJziXffjaV0JGh/aWwZT4OrVGfELU5pcdcAWEfaiGKbui0/3diYq1Qmn7V/4VQEwURLxAduepLxnvRkF0MT+tvm/3kAMgohX4YB7NvLFhoLGgDbtUuqITKCugmiz29WuriKZg75TZPUObWk4nL5F+21cZrwUUwFVU3K5cAOkE/M4kMJhoCYgQZwZl3jwoq88jBaV1M1VG/Ir1mDAh5GTowzDNGwM= WDCIPOUTBOUND: EOP-TRUE X-Microsoft-Exchange-Diagnostics: 1;DM2PR04MB398;20:SzOuuktoBPPAPX1QGdZRCIUAYK8gVNJPExlxaWIUTui5CnLL88877YIEZj2tYSD4xdOC+ka4M2nc93sO7eheg+knz/fBbKpRuAAmKeBBGEFR9ZlIqFEoSQ99/sBovF48Fr/Cg5O8GZnEwwcZribaeVXRtAk39Bu7Pe/FVCm8pPOX7nbSBZSQhSGng4vneqWNtafZDBTtMJahp4MpA9OOAtGuch6Pb3H/LgC1Kh7fImrTrvWGdd0dtbfh5FOSzSXaFxvAaBgwt5+ZwLot1zEie7W0CwZ2XbX1zWneJp3rGSSA2zDXiEzYMU6Mtnl0/C8jMyd5WrfVwHLr49n1t9cRhL+XzpMy5HfMt23Sjij4Vkk8nPgCYKN1notjwsUjQ75qDlM0WhXOMpALl96xQcJIl0H+lVmp+0oMaJVKAfnnsErD/Fj459dqzAodGpn9cCufTVa8u3E24SSLfUJqdeU88xrEauv8Gwe6hF1T9zGvXWlMMbCeSTWQV2YU/Lk99mX6 X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(67672495146484); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040450)(601004)(2401047)(8121501046)(5005006)(13024025)(13016025)(13023025)(13018025)(3002001)(10201501046)(93006095)(93004095)(6055026)(6041248)(20161123555025)(20161123564025)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(20161123560025)(6072148);SRVR:DM2PR04MB398;BCL:0;PCL:0;RULEID:;SRVR:DM2PR04MB398; X-Microsoft-Exchange-Diagnostics: 1;DM2PR04MB398;4:GXw8HO5rOtzfpXUMBtg3su1cUseD7d66ccZ8Kyt9K/Ln+KingjbrHMaMLlcpx25bnwoobu0wUWi82GHG5h4tUbpex/pvJg/YRLbMBY7FuEfTyxLaZmGj3hYyHDlot3JSdYAc2T6ieRPqqbRS35GDQzMEo2xlacoQHs4zGh9h9edkEnwOUgSH8RddXS6Rb2m/GhTcoNpFKC5qSGUZJBko8vn2pSsCzI01BVzOwIwYBSX2OdeeEBJ7Vh3KB55UbGT4/vcsFKDBct6lO05xZA2a390IYEK7+ofFIfebRiS6GUSbZcpHXm/7lH9/t0iWGbeJEdag/M+ycDQXKkdxViuegogP7wW/QhInTeoxVWjtmFlZp82Hgmv4r02Ta7jPypRiOb7bfwh7Ra9+T/7nHtqVDRykg/oxufwuuhJ8wVAyANW9tqmT1p4rQu0wL6Ve6oE0awm50p5RJvFZp3FQ2I3+S8KaPX20CSCYIzPOpWJlmOqlG+KXvZUr+cPQFQnehuie/5x/Cu9SeLkSXtz2AFf89wphgkobO0pbjGlbX/Djg6qVzk1I7VGIPuUs2etO0mLyO9CC8d8vkLOVz4HUktnxvEkfsq80MxyoVzIrfA28FzU6Dcub/5572eWgUYsje7AjPlOW/tq6k7ycdBSuyYBDNHIkp1o73z3dhCQ2fMuv/FbTcBWjzcXhiqSc/hUy/iNwoXEdDN8egfL2a1AOaY+tqEC5R9ncOLRtu0iNlFVQLM5iSnILU6XWNtygnSHmGpeUpE4CmyfGO/cFwPV9LzlzdBWaICXXb/Ar/HVw5PE7C0lAeN5OI01k2ESC1Fn2Zr4PUDZoUfuuhD/+IbDzwZOVw77cmmLg7TXw8at2VpkUyUc= X-Forefront-PRVS: 0264FEA5C3 X-Microsoft-Exchange-Diagnostics: =?utf-8?B?MTtETTJQUjA0TUIzOTg7MjM6RkFRVUJmcWF4MWZjUG9jcFNNNlViY2ozdUJ2?= =?utf-8?B?SHdQRVNGclU4cjVvNGJEdlJDeXIxaWtGVDJzUWFUL3dMNjFQZXZQWTlMeWo0?= =?utf-8?B?eXdrSm91RDdSV1ZaaEFyMjMzNk94c1dZWWNWMXdoV0tCb3o3WXNwbThRWHdR?= =?utf-8?B?OFpWUzh2RkZOeHByV3Y3bmhVZzJBTG1sZ1MzZFZYZ3VaSklmNk1WV1FoZXdD?= =?utf-8?B?NUJSOG85Z1Rud1JOUVVGL1VpNXZZenRVbHZ4andMQ3NuejBVQWVycnZUQXNX?= =?utf-8?B?dEFScXRxWkpoeWxwOGVCemxDWnRkdGN4Z2Y2MVVjMXdPajlxTEE1RWRvUXMx?= =?utf-8?B?TUVBVnFjMmRSNVRrUWtZY2dLNVA4TzdENGYrdXE4cWRQTUFqVDdRbkZqSytG?= =?utf-8?B?MkJ3WEViTmxKK1dPbmJVbEE0cWdpT2xzd0pmUy9sUmdDWlFZWmwvV2t3d0Y4?= =?utf-8?B?ZUc3SVAzNm4vNUp4TU9BZ1htVnIyWGx1YzBYTTdsaUxRUnN2SXZ2MUtoeGox?= =?utf-8?B?dFBhSzlXVXB5VE5HN0hKMXp3SEphSWtPQjQrZms0elYweHphb2lRQk1yQyti?= =?utf-8?B?QmRBQlZQWjMvdnNyNUNRUHAxK2J0akUxUng0ZWtHMU5DZWl5RWEzM1lHNFhX?= =?utf-8?B?YTNXZEpKd3FHSjl6eDV2SThnSWhaSHR5UjFKcE5LVWpHSzlpSHRkb2NpY3JJ?= =?utf-8?B?ODAwcmNXTS9haktNUFdDR2lJQ1pBek1GazlUSUV2RXhBSG5LYUVnVzAxV2hN?= =?utf-8?B?VEZiV2NaaytEek1nVlZoRXdaanlqQlV5dDgrNXNFcnZwdS9xRjNSTDl0bk9H?= =?utf-8?B?LzQ5VkNHRm1NUzFpTmUzY2drWnlkRm5ENWR2VHAvNWNDRFJpc1ROaFNteFFT?= =?utf-8?B?UWlLeGF4TmtGQlk0Q1JlU216L3FTRWFrY0lJMEhYdmE3VXZMMHU4NmJUT092?= =?utf-8?B?T0pqQTlTZXJWNXlZWGt4bi9JOUlITVgwYmpsNlJXYVR6OC9hR2hvTE52Qlk5?= =?utf-8?B?Ujd4VEJLWGJkam9WZy9YOHo0Y2pqQk1LOTdzY1o1VSt4ZzRRSEFvS1NFY3Ju?= =?utf-8?B?UW9JMjNUbU1qd3duY2J2dFRLNVllblBmZVpuTlFtajhPbmdEU1RDTDRrUDdT?= =?utf-8?B?Mk1sUTBzRTJpSkxtVVpwNHNaUGF0RkhQUnMrc0VsMXFqTnVYNlFYaUs1aWdQ?= =?utf-8?B?UnhKSHo0cFI4VEQzOTZXeTFmVmxTVzZJVjFUVE9paFFzaTIxRTA3OTR5Slpa?= =?utf-8?B?MGVTemNBK1JyUC9OelRFa0t6VHppRzd6MmdMaE5TMmlSaHhlUEFrbHBhdlVa?= =?utf-8?B?MDUzVjZ1MEd0ZWJGQ2pOTW43UjcxUm90dXp2bGY1WTZKTTJ3b0w3QVQ3aHg3?= =?utf-8?B?OUl3N1dZa29GRUFiTS8yR1hZQmxVTnZQNFQvV2RGenVkelgzVi9vc2dDZlg0?= =?utf-8?B?eGd3eXA2dWh1U1VyMStDZ2NCaXRTaUpHdVl6TThCWHVoWkc5b2NOYW1zdXlw?= =?utf-8?B?ZmM3YTVNcnladG9YdG0zLzJGSnNpbjI2M25FUkJVUFVSNUdyRHB4amVGaFQ0?= =?utf-8?B?d3orMFNGc2ZPTmpkR0NLd0RTaTJLSllCS3J5SEJJeEZ6ejd5L2tad3VFVVRw?= =?utf-8?Q?W8Xjt2xm0nFi6GlJiVR?= X-Microsoft-Exchange-Diagnostics: 1;DM2PR04MB398;6:snku3qcEpwvCCzbA7OE/S+/JPORW5POmAL6A54SVRXWpgS720m6qW7XjZ6uGegqfJP4mS7aONk32c0sxfOjurOyJ/V+hKKawMn7LCUnWdaZFeXHQz3uTl/iNottbu0c27K2lQVVH+LoFk/FJsJh57nWRUVa7A3aOu9bD7eN3HM+pJo9DyUCqDHxCSqqsK0SE0juMsYfAerfgtSchl5lH6NOZWkO6miiwuEsaSbLBPYwAAYqjM9bNYIYJq4ICaxPkrcd+qRcexr5ggFmp8sJcQmnsclDRf5W02eSVeDJlldBYjM2J/R5xpxtXaUMD4vudYu2PL9bBrBCaiozAMgXmpZRfvXq4oRo5CEOoq3epo7QZoHLkKrLJhyUyXRwFpj6lfgFZ7xfGxesRmcdSrkDD/OmnAQfyeS6IMaBx1VcRUoo=;5:p1vxPwqwNhBuP8RScSSpSGhtBfZtTHL2verYiZ2fOnlTftuV5uZCHd3SLfijczY5NOegYiqmDPT19RxgJN8BCyeYYrmlsnfKhx5PO1cFY/RraVBbrwlC7S/O6H8CnqlLap9He/Ta3fm6KzbXh7/3nQ==;24:W4H0GmnT3rzw6BHLrtJyteeRJoaEGD+WhG9hqrELZwPNo7Lc2izsL2Mjygw1vNxIugr/p+Mt8+l36WedF05v1i/o0ivGn+E0BRVfxlq2vsM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;DM2PR04MB398;7:ixfaEeA2hSlhjmReqqYuiPC+dZlP5hsmWpf5oou3tZ1lnKRK4zrwnPdlvkMHSn0W900yGAzzxE0gGNwuO6g7ohRmIBilBOSm6fNgq/PmGzC7NKSsikGX4+AkViZdp9i1qiH2MrhggAv3xfJVVIG1Reolx+X0zLFdOj4pdBDduo4tC5HiL6ywLbUQW12BFg3ODDDovkAE1DTWwmYS+D4IP4kTVKE8MSwtub8Bu7liWxsRyW2Ie+5JmmNPN43fdGOH4S/f0SDiZaBozmGmcVgFlMWoizzsO7QZ+jQhkLwkMwpvOR/37u81nf+KA3c4ZC8xlyNz/U8jjDGbQuBANZJK1g==;20:wVLYyZcNk9Ai5NgFhOwds0jWjVwGTG2P8K8g+aELo02r0nQ8SBJ8z0UpiAJo+EcTetZ5QRhW8pdHPQYaxA81tluEYUXekaESJXXC9UEgIyzQZu6lzjit6uwZRlyGpLRrZMETp783HX+kpHvItsrSQttv0dfjTyiHhRv+37/UmNU= X-OriginatorOrg: sandisk.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Apr 2017 23:30:01.4693 (UTC) X-MS-Exchange-CrossTenant-Id: b61c8803-16f3-4c35-9b17-6f65f441df86 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=b61c8803-16f3-4c35-9b17-6f65f441df86;Ip=[74.221.232.54];Helo=[sacsmgep14.sandisk.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR04MB398 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 mail.home.local id v31NUIrk018613 Content-Length: 1613 Lines: 34 On Sat, 2017-04-01 at 16:07 -0600, Jens Axboe wrote: > On 04/01/2017 01:55 PM, Omar Sandoval wrote: > > From: Omar Sandoval > > > > This patch introduces a new I/O scheduler based on the classic random > > early detection active queue management algorithm [1]. Random early > > detection is one of the simplest and most studied AQM algorithms for > > networking, but until now, it hasn't been applied to disk I/O > > scheduling. > > > > When applied to network routers, RED probabilistically either marks > > packets with ECN or drops them, depending on the configuration. When > > dealing with disk I/O, POSIX does not have any mechanism with which to > > notify the caller that the disk is congested, so we instead only provide > > the latter strategy. Included in this patch is a minor change to the > > blk-mq to support this. > > This is great work. If we combine this with a thin provisioning target, > we can even use this to save space on the backend. Better latencies, > AND lower disk utilization. > > I'm tempted to just queue this up for this cycle and make it the default. Hello Jens, Did you mean making this the default scheduler for SSDs only or for all types of block devices? Our (Western Digital) experience is that any I/O scheduler that limits the queue depth reduces throughput for at least data-center style workloads when using hard disks. This is why Adam is working on improving I/O priority support for the Linux block layer. That approach namely allows to reduce latency of certain requests without significantly impacting average latency and throughput. Bart.