NetBSD-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: create /tmp with ffs vs. tmpfs ?
On Mon, Aug 12, 2024 at 07:30:20AM -0400, Greg Troxel wrote:
> Steve Rikli <sr%genyosha.net@localhost> writes:
>
> > 1) is my understanding correct? I.e. does tmpfs use main memory for
> > backing, rather than swap or something else?
>
> It uses virtual memory which can be paged. So if you have swap space
> configured, it can be bigger than physical memory. However, things in
> /tmp will compete with other memory usage.
>
> > 2) can I configure /tmp as ffs rather than tmpfs?
>
> Absolutely. tmpfs is relatively new in the history of unix and having
> tmp as a real filesystem is entirely reasonable.
>
> > Seems like I should be able to (manually?) configure /tmp as ffs during
> > initial sysinst, or leave some unallocated disk space to do it later.
>
> As Martin said you can leave it on /. Original unix tradition was to
> have separate / and /usr, which let you boot if / was ok. And it
> protects / from becoming full from runaway activities in /usr, like
> actual users on a multiusers system. So you can make a 4GB /tmp
> separately so that when /tmp is full / is still ok. Or you can just
> have one giant partition and take your chances, with more efficiency.
> 128G isn't that big a disk.
>
> Definitely add swap, maybe even more then 4G depending on what you want
> to do. But 4G is probably enough for anything you want to put up with
> waiting for anyway.
Be sure to always reserve some extra partitions (I personnally prefer
them other swap files) for swapping in order to add more if needed.
I was hit some times by "new" programs that make absolutely no
provision for limited memory and put everything in memory, the
original file and the result (example: jpeg2 files).
Spare space is always a must have.
>
> > My main thoughts were to avoid using RAM for tmpfs and simply configure
> > a larger swap partition, or add a swap file, etc.
>
> There is a really good question here. Which is, for some reasonable
> workloads, building programs that use 100M of /tmp and 1.5 GB of /tmp, how
> things go with
>
> both system 4 GB swap
>
> A) big / with tmp just part of /
>
> B) big / with 2GB tmpfs
>
> I am really not sure what is better. I suspect tmpfs performance is
> better for the times when /tmp is only 100-200 MB or so. I am really
> not sure how it would go with larger.
>
> When building packages, some are ridiculous, e.g. thunderbird, which I
> think needs around 19 GB of $WRKDIR space. I have code in mk.conf.local
> to flip from /tmp/work to /nfs/ztmp/work-$hostname where the latter is
> over NFS and a zfs filesystem on a big disk. It's slow but the builds
> finish. So you may be able to use a smallish tmpfs and point specific
> big jobs elsewhere. That's more work but higher performance - after you
> get it right.
--
Thierry Laronde <tlaronde +AT+ kergis +dot+ com>
http://www.kergis.com/
http://kertex.kergis.com/
http://nunc-et-hic.fr/
Key fingerprint = 0FF7 E906 FBAF FE95 FD89 250D 52B1 AE95 6006 F40C
Home |
Main Index |
Thread Index |
Old Index