Date: Sat, 6 Feb 2021 16:45:12 +0000 From: Vladilen Kozin <vladilen.kozin@gmail.com> To: freebsd-performance@freebsd.org Subject: Tuning and monitoring write intensive server Message-ID: <CACw=CXMLqxhtc=_zS%2ByGqxTVDHvz3=rjvukO_4fXWntpW=35Rw@mail.gmail.com>
next in thread | raw e-mail | index | archive | help
Hello list. I have a rather niche and specific task I'm trying to tune for my recently acquired homelab server. Easily parallelized, extremely disk IO (write) intensive. If having read this you think it belongs in freebsd-questions, kindly tell me so. I've not used FreeBSD for 20 years, so I'm not up to speed with the lay of the land, any guidance be welcome. Machine is SuperMicro CSE-216, 24 SAS 10K spinners, backplane daughter card connected to LSI SAS9211-8i HBA with two wires, two XEON CPUs 12 cores each for a total of 24, 128GB RAM. Surprisingly both Ubuntu Server and Fedora server choked at install trying to write to those disks. Seems like they have mostly standard block size but maybe they were somehow write protected (server is obviously not new off of Ebay). Anyhow, FreeBSD ate it like a champ so here I am. Freshly installed 12.2-release, all disks UFS, no RAID so each disk is its own thing. Like I mentioned very specific task, be running as many processes as there are cores (so 24 each consuming 2 threads - does FBSD allow hyperthreading?) each writing to its dedicated disk - no other process will ever touch another process's disk. This is what I'm trying to optimize for. So, given that info what are the things you think I should optimize (if anything), what tools do I have available for that and should try on FreeBSD. E.g. maybe I should be particular how I partition or format those disks, or the way I mount them, or the way I run my processes etc. ATM I've followed the Handbook - nothing at all fancy there. FWIW here're the disks in question: sudo diskinfo -v da1 da1 512 # sectorsize 900185481216 # mediasize in bytes (838G) 1758174768 # mediasize in sectors 0 # stripesize 0 # stripeoffset 109441 # Cylinders according to firmware. 255 # Heads according to firmware. 63 # Sectors according to firmware. IBM-207x ST900MM0006 # Disk descr. id1,enc@n500304800169193d/type@0/slot@2/elmdesc@Slot_02 # Physical path No # TRIM/UNMAP support 10500 # Rotation rate in RPM Not_Zoned # Zone Mode Related, what metrics I should and can collect and track and what tools does FreeBSD give me to do so. Great if those are end user ready tools with UI etc, but I am good enough programmer to script things to get what I want - no issue. Task non-specific question is how to best manage and monitor that SuperMicro and again what tools FreeBSD gives me. But that probably belongs in freebsd-questions. SM IPMI gave me a head start but it is clunky to say the least. ATM I'm going over SSH but I probably do want to monitor server health somehow. Thank you -- Best regards Vlad Kozin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACw=CXMLqxhtc=_zS%2ByGqxTVDHvz3=rjvukO_4fXWntpW=35Rw>