Slashdot Mirror


FreeBSD Looking for People with Lots of RAM

drdink writes "A few weeks ago, PAE (Physical Address Extension) support was added to FreeBSD 5-CURRENT. This allows memory above 4GB to be used normally by the kernel and userland on the x86 platform. Jake Burkholder, the man behind PAE, is now looking for users to help him test this new feature. In his message to the freebsd-current mailing list, Jake describes the current caveats to PAE and also says 'We'd like this feature to be solid for 5.1-RELEASE, so I'm hoping there are people out there with systems with more than 4G of ram that are willing to test it.' This, along with other features make FreeBSD 5-STABLE look very promising."

19 of 271 comments (clear)

  1. ARgghh by cholo54alpha · · Score: 3, Interesting

    MY dilemma is I have a lot of Ram but half of it is flakey!!! so I just tell linux to skip over it. It's really like having a regular amount of good ram. Hey, can BSD map my bad ram out too? Anyone?

  2. Volunteer... by addaon · · Score: 4, Interesting

    I have an HP LXR 8500 with four processors (currently) and 4GB of ram. I've been considering upgrading to 6GB for a while anyway. I'm currently using Windows 2000 advanced server on it, after being somewhat frustrated with Linux support a couple of years ago. I'd be more than willing to try out BSD, although I never have before. Is there anything I should know about this? I presume that BSD would run Mathematica fine under Linux emulation mode, as my main use of the box is just Mathematica crunching. Does FreeBSD make reasonable use of four processors? Anything else I should beware of? And anyone know a good source for cheap lxr-ready ram?

    --

    I've had this sig for three days.
    1. Re:Volunteer... by Brooks+Davis · · Score: 5, Interesting

      Mathematica runs find under Linux emulation. We're currently working on getting Grid Mathematica into production on our FreeBSD cluster at work. It runs, but we haven't really done much with it yet because the real users are still working on understanding the programming model. FreeBSD should work well for you in this mode as long as you have the four licenses you'll need to keep the CPUs busy. The way Mathematica handles parallelism (seperate processes) should be able to take advantage of PAE.

      The one gotcha is that PAE is a bit bleeding edge at this point so moving to it may be intresting.

      -- Brooks

      --
      -- Any statement of the form "X is the one, true Y" is FALSE.
    2. Re:Volunteer... by Billly+Gates · · Score: 4, Interesting

      Yes but its unbenchmarked

      FreeBSD 5 also includes Linux like threading. This has been one of the traditional weaknesses that are being addressed. Great java support as well. Since java uses threading heavily FreeBSD 5 will make it have server/workstation performance. Yahoo wanted to go with Java for their next generation portal software but Freebsd 4.x series had mediocre thread support.

      Freebsd 5.0 rocks! The only downside is that my Microsoft USB keyboard does not work with FreeBSD 5 on certain motherboards. I think its a bug and I hope its fixed soon.

    3. Re:Volunteer... by addaon · · Score: 2, Interesting

      No, I haven't written Linux off at all. I'm simply comfortable with the current situation, and felt no need to change. Now there's motivation to change, as testing would help contribute to a project that I think is valuable, even though I don't currently use it myself. I don't doubt that Linux is a viable solution now -- HP even supports it on that hardware. I just have more curiousity than need for stability.

      --

      I've had this sig for three days.
    4. Re:Volunteer... by addaon · · Score: 2, Interesting

      Yes, that's what I mean. With regards to trying to do a slinky... honestly, I'd be happy with a swan right now. It gets the tetrahedron, finally, and the cube... but takes most of an hour to do it. Basically, I'm doing simulated annealing (gradient descent with a cheap hack to avoid local minima), and the problem space is just too unsmooth for it to be at all efficient. I think the solution is to find a way to smooth the problem space, rather than trying more powerful solution methods... but I'm generally dissatisfied with solutions. They either reduce to "crumple the paper" or "really, this five-sided star is a frog to me".

      --

      I've had this sig for three days.
    5. Re:Volunteer... by addaon · · Score: 4, Interesting

      Mathematica is slow, inefficient, and a total joy to work with. Matlab is about 10x faster, and at least 100x faster for matrix stuff (mathematica does matrices as linked lists of linked lists!)... but if I want speed, I'll use Fortran 90, really. Mathematica is just lisp + pretty printing... but it undeniably works, and I've never used a more productive tool in my life.

      My basic method is to take a 3D solid (that is, a polygonal 3D model that encloses a volume). I apply a few standard smoothing operations to this model to get a very, very rough shape (in particular, I smooth it until it is fully convex, the first time). I then do simulated annealing based on a handful of hardcoded starting conditions to find a good approximation of that shape -- metropolis might work better for precision, but I decidedly don't want precision now. I then take the model and resmooth it, but one step less. I use the previous foldset as a starting point, and anneal from there. I repeat this for each level of smoothing that was originally needed.

      Normally it takes around a million attempts to approximate each smoothing level, although this varies by a factor of at least one hundred, where the swan, for instance, takes about fifty levels of smoothing.

      Make sense? Not saying it works wonderfully, but I think it's the correct approach and just needs tuning. Amount of work is, to a first approximation, linear with the geometric complexity of the model, and more or less independent of the number of folds... certainly not exponential in the number of folds!

      --

      I've had this sig for three days.
  3. Sweet! by Anonymous Coward · · Score: 2, Interesting

    Their test system with 6GB has 12 times the memory in my 512MB system (with maxed out RAM slots). Remind me again why 64-bit CPUs are needed...? ;)

    Joking aside, it's very cool - is support for more than 4GB of memory a first for 32-bit x86 operating systems? I believe Windows NT is limited to 2GB because it keeps half of the 4GB address space for virtual memory / paging (is this right?). At the very least it will help in the interim before native 64-bit x86 machines are commonly available - both in terms of extending existing applications and porting over to "true" 64-bit compatibility.

    1. Re:Sweet! by addaon · · Score: 2, Interesting

      (a) 4GB+ on x86-32 sucks. I mean, it works, but it's a hack. x86 has a history of adding new hacks to make things work, then slowly evolving away the hacks into something workable on a longer time scale. PAE, how 4GB+ works now, was the right choice at the time; it's simply time to move beyond it, and x86-64 is it.

      (b) You can get 2GB dimms now... you may be able to get 4GB dimms, haven't looked, as my system (32 slots) doesn't need more than 2GB dimms. So if you really want more ram, check to make sure you're truly maxed out; it depends on sdr/ddr and other factors, of course, but there's some potential.

      --

      I've had this sig for three days.
  4. My current setup (12GB RAM) by Anonymous Coward · · Score: 2, Interesting

    I'm currently running a workstation with 12GB of RAM. Where do I sign up?

    Specs:
    Intel SHG2 board
    Dual 3.06 XEON processors
    12GB DDR266 memory
    nVidia Quadro
    480 GB hard drive space in a 4-way stripped array

    My penis is normal size, thankyouverymuch.

  5. Uh... by JanusFury · · Score: 3, Interesting

    How would you test that? I can't think of any easy way to actually test that much RAM. What would you do, load 8GB of random data into RAM and compare it byte-by-byte with the original data?

    --
    using namespace slashdot;
    troll::post();
  6. I have just the box for this... by Drakino · · Score: 2, Interesting

    Guess I'll have to put to use our lab DL760 G2 machine. Has 2.5 GB currently, should be able to find another 2.5 gb for it (Raid 5 memory overhead and all).

    How well does BSD work with Hyperthreading? The lab box has 4 HT enabled Xeons in it right now, and I could toss in another 4, resulting in 16 virtual CPUs.

  7. Rembember the LIM standard? by callipygian-showsyst · · Score: 2, Interesting
    Years ago, there was the "LIM" (Lotus-Intel-Microsoft) for adding more than 640KB of RAM to a PC, by "windowing in" a section of RAM in a certain area.

    It seems that, 20 years later, we're back to doing essentially the same thing.

  8. Eh. by Kourino · · Score: 1, Interesting

    PAE never really excited me. I mean ... it's like EMM386, with 4GB instead of 1MB. It's a hack, and from what I hear (that is to say, what Will Irwin has said on LKML) PAE is fairly slow compared to regular memory, anyway. (And regular memory is already fairly slow compared to core CPU clock speeds, even with high-speed DDR.)

    I won't say people don't do >4GB on x86, because obviously they do, but there are reasons not many people do. :3

    1. Re:Eh. by Guy+Harris · · Score: 2, Interesting
      and from what I hear (that is to say, what Will Irwin has said on LKML) PAE is fairly slow compared to regular memory

      What exactly did Will Irwin say? (Do you have a link to his LKML message?) It's not as if there's "PAE memory" and "regular memory" - if PAE is enabled, it's all regular memory, you can just use more of it.

      What he may have meant is that, with PAE extended, there are some things that are slower. With PAE enabled, you have a 3-level page table rather than a 2-level page table, and page table entries are larger, so page table walks done on a TLB miss might be more expensive. It might be that the VM code is slower as well, because physical addresses and page table entries are larger.

  9. Re:Wow! by knightinshiningarmor · · Score: 2, Interesting

    We have an IBM machine with 40 (yes, that's forty) gigs of ram. It only has a 60 Gb hard drive, and it's not too full, so putting the entire drive in ramdisk isn't out of the question. However, if the power goes out, the UPS probably couldn't keep it up long enough to write everything back to the disk! :D

  10. Re:RAMDISK! by ePhil_One · · Score: 2, Interesting
    Except in the case of big file copies and such, things you don't often do on desktops,

    I'm thinking you can count the number of PAE enabled "desktops" on one hand. :^)

    What I'm talking about (and hopefully other folks on this thread) are servers, with admins who at least have some clue what they are doing (else they wouldn't be running BSD/Linux). I have a set of files that I need to search through very quickly, with a SLA attached to it. I need to ensure that this file remains in RAM, I don't want might nightly updatedb flushing the file out of cache, or any of a dozen other maintenance scripts that I don't give a rats ass about how slow they run, screwing this up and causing the next search to run 10x slower at best and giving a negative user experience, causing the system to fail its SLA, and my company losing beaucoup bucks.

    We're not talking about a generic file server, where you have somewhat randomized access and you're far better off letting the OS do the caching (Its good at that stuff). I'm talking about systems like databases that are constantly reading data but there are some core indexes that you need to search FAST.

    A little example. You have an application that has about 20GB of data, spread among 10 files. You read the first 4GB of data and most of it gets cached on your 4GB system. It then reads the 5th GB of data, flushing the 1st GB out of RAM. At the end of the search, you have the last 4GB or so cached. Now second search starts, and the last 4gb gets flushed to make room for the first 4GB, process repeats. The only time caching benefits you is when a second search is launched within the time it takes to search the first 4GB or so, so caching just isn't going to help unless there are some pretty damned advanced adaptive routines happening. So instead cache one of those files on a RAM disk, and you search time improves 10%; more if that file is access more than the rest.

    --
    You are in a maze of twisted little posts, all alike.
  11. Re:That's different ... by Guy+Harris · · Score: 2, Interesting
    See, SPARC doesn't have that silly 4GB addressing limitation that IA-32 does.

    Well, SPARC V9 doesn't, but the older 32-bit versions of SPARC did. SPARC V8 plus the SPARC Reference MMU supported >4GB of memory in the same way PAE does, and Sun supported that on their Sun-4d machines, I think.

  12. Umm.. Nokia? Apple? Gov't? others? by evil_pb · · Score: 2, Interesting
    Actually, Nokia's security appliances (arguably the most popular firewall platform out there) run on a highly stripped/secured version of BSD on which Checkpoint sits.

    Apple's OS/X Darwin kernel is a direct derivative of BSD.

    The US Government just gave $2M USD to further the development of OpenBSD, because the government uses it extensively in places where Linux would not be secure enough.

    Qwest uses it as a server platform in various places. I worked there, I saw it. They have a few more than 1000 people. I guess you could classify them as "an enterprise" type of company...

    And IBM uses BSD, whether they openly sell it on their 'e-server' systems or not. I'm working here now, looking over at my BSD server... Hi, IBM BSD server! :)

    Check your facts dude, you sound like an idiot. Just because Linux has permeated the Windows-weary waving the flag with "look at me, something new!" messages and all that, doesn't mean BSD has lost functionality or purpose.

    I also own a small local ISP on the side. We are 100% *BSD based, and except for large patches/upgrades, my systems are rock solid and have never had a security incident. We colo a windows box for another small company there, I keep it firewalled off on it's own physical network because I don't trust it. Same goes for the Linux box we also colo.

    Part of why Solaris is so popular as an enterprise system, is the lack of cruft. It doesn't hurt that the hardware is ridiculously fast too, but Solaris doesn't have directory trees 5 levels deep or all of the annoying shit I see in Linux now. BSD is the same way - everything is just "cleaner" IMO. The documentation is *great* compared to Linux, and the message lists are extremely responsive if you can't find it somewhere else.

    BSD may not have the home user appeal, because it's not all fluffy and cute. It's designed to be fast, efficient, and reliable, without being everything to everyone. It takes a little more knowledge than how to navigate a GUI to get it going, but the rewards are worth it if you're a seasoned admin worth a sh!t.

    In an effort to create market appeal, Linux has become bloated. It has added everything for everyone, and though it's easier to use, the intelligence required to admin it has dropped significantly, so that when an "experienced linux admin" comes across something hard, they're stuck. I see it traversing more into the user market, but it's moving into the arena of a "windows-like server that doesn't crash as much". For true hardcore servers, I do think there are better things you can use.