|
2008/5/2-5 [Uncategorized] UID:49873 Activity:nil |
5/1 My professor mentioned the frobenius norm in class, but it it sounded like 'pro-penis norm.' Took me forever to figure out what he was trying to say. \_ Stop day-dreaming about your boyfriend, bro. |
2008/5/2-8 [Computer/SW/Compilers] UID:49874 Activity:low |
5/2 How do I get the L1/L2 cache size and cache line size on my machine? Can I find this stuff out at compile time somehow? \_ You aren't planning on running your code on any other processors? \_ May I ask what it is you want to achieve ultimately? If you don't know your architecture and want to find out dynamically, there are tools that can peek/poke to give you definitive answers, plus you get to see the latency of L1/L2/memory and infer a lot of info like cache associativity. Prof Saavedra has done a lot of cache benchmarks and micro measurements. -kchang tools that can peek/poke to give you definitive answers, plus you get to see the latency of L1/L2/memory and infer a lot of info like cache associativity. Prof Saavedra has done a lot of cache benchmarks and micro measurements. -kchang http://citeseer.ist.psu.edu/saavedra95measuring.html \_ No, there isn't a simple way, compile time or not. Your common user oriented desktop compiler today doesn't know anything about L1/L2 besides knowing how to do proper register allocation and in most cases don't even do a good job of spilling, knowing about cache effects, etc. Now, there is a lot of research in the past 20 years where compilers for specialized applications will optimize vector computing, tight loops, unrolling based on known monotonicity of variables, specialization, and allocate memory access patterns all based on memory locality (L1/L2), but you're not going to get that type of optimization from gcc or M$ compiler. the past 20 years where compilers will optimize vector computing and allocate memory access patterns based on L1/L2, but you're not going to get that from gcc or M$ compiler. \_ That's unfortunate. Is there some program I can run to find out? /proc/cpuinfo tells me, "cache size : 4096 KB", but doesn't give L1, or line size. Is that just the data cache? (This is an Intel Core2 ) \_ What the hell does "at compile time" mean? \_ I mean, perhaps there is some built in constant I can use that gives the L2 cache size of the machine you're compiling on. \_ You mean for a POSIX C++ compiler? Also do you not expect your code to be run on any other machine? \_ Nope, this is purely an optimization test for 1 machine. I guess if there's a way to find out the sizes dynamically that's ok too. \_ What I'm saying is that "compile time" doesn't mean shit. Compile time + what language/compiler you are using might mean something. \_ Language: C, C++, or Fortran. Not picky Compiler: gnu, intel, or portland. Not picky. OS: Linux. \_ If it's just for one machine, why don't you just look up the specs at Intel or AMD's website? \_ I think I'd have to know more about the CPU than I do. Also, it would be nice to be able to recompile it on other machines for comparison. \_ Then you probably want to look into a CPUID utilities (or roll your own simple version if you just want simple cache info), along with preprocessing of some sort. However, cache size and line size are spelled out pretty clearly in specs, so you don't have to know all that much. \_ Someone considerately overwrote my post here, so to recap, look into a cpuid utility + preprocessing. |
2008/5/2-8 [Computer/SW/Languages/Java] UID:49875 Activity:nil |
5/2 I'm out of school. What's the best link to self learn stuff like k-means, clustering with gaussian mixtures, gaussian bayes, EXPECTATION MAXIMALIZATION, EM convergence, inference engine, classifier, desnity estimator, regressor, etc? \_ Start with wikipedia, follow links. \_ Uh, no. This is not the kind of stuff you can learn from wikipedia. \_ Take the first item. K-means. It described the basics and had pretty informative links to outside sites. Some of those links have references to books to read/other places to look. Wikipedia is not a place to learn, but it's a damn good place to start, esepecially for computer stuff. The real answer is "find a highly recommended textbook, buy it and read it." but you were clear about wanting an online resource. \_ Go back to school and take a course or two. If you are going to put in the work you may as well get credit for it. Also, the structure and ability to ask for help are plusses. \_ What good is a course credit or two to someone who already has a long and successful career? He wants to learn a few specific topics. He should buy a book or find an online tutorial and read the parts that matter to him. He may (or may not) stumble into other interesting things that would've been covered in a class and without the hassle of class. \_ Many Master's programs are only about 8 classes so 2 classes and you are already 25% of the way there. I know lots of people with PhDs even who went back for an MS or even more than one MS. Like I said, if you're going to put in the work you may as well get the credit. Put another way: Why *not* take classes? What's the advantage to avoiding class other than cost, which may not be an issue if work pays for it? \_ Because learning a few specifics from a book/article is a hell of a lot less effort than taking a class, doing homework, being there at specific hours several days a week, kissing some instructor's ass for the "A", paying fees (poss. covered by work as you noted), having your learning slowed down by the inevitable time wasting morons in class, etc, etc. If he wants to learn entirely new branches of knowledge then sure take a class, but that isn't what OP appears to be looking for. I wouldn't suggest someone take all of Math 1B if they only wanted to learn Taylor's Series which can be learned in a few hours at worst. Some people are addicted to school, that's fine, gather up all the dgrees on the planet if that's your thing, other people just want to get work done. \_ I've learnt a hell of a lot post school without going back. Having a degree means you should know how to learn. (Unless your problem is a lack of discipline.) \_ I didn't say you couldn't learn that way. I just don't think it's the best way. Who do you ask for help when you get stuck? Without exams how do you know that you really "get it" or just think you do? Who helps you separate the wheat from the chaff? I think every engineer or programmer does a lot of self-learning. That's almost a requirement. However, "knowing how to learn" isn't really the issue here. |
2008/5/2-8 [Politics/Foreign/Asia/China] UID:49876 Activity:nil |
5/2 Does anyone know how to use the "Chinese (Hong Kong S.A.R.)" input method in XP? When I select it, all I get are English characters. I can't figure out how to bring up Chinese characters. OTOH the "Chinese (Taiwan)" works fine on the same machine. Thanks. |
2008/5/2-5 [Computer/SW/Database] UID:49877 Activity:nil |
5/2 SUNW (Sun Microsystems) buys MySql: http://www.mysql.com/news-and-events/sun-to-acquire-mysql.html \_ Umm, okay. Do you have a point to make? Did you notice the date on this is Jan. 16? |
2008/5/2-8 [Recreation/Food] UID:49878 Activity:nil |
5/2 Americana at Brand Opens in Glendale! Hooray! -dimwit #1 fan http://ktla.trb.com/news/local/ktla-americana-brand,0,982049.story |