#qi-hardware IRC log for Friday, 2013-01-25

whitequarkwpwrak: is there even such a thing as -O9?07:29
whitequark-O3 should be the last one07:29
wpwrakwell, it's an implementation-independent way of asking the compiler to give everything it has :)07:49
whitequarkwpwrak: I once committed a mistake of using -O10 for much the same reason09:27
whitequarkobviously it ignored the zero, so...09:27
Fallenouahah10:27
whitequarkthe yet-to-be-released LLVM linker can emit files in YAML format (as an alternative to ELF, COFF, ...)10:36
whitequarklike this: http://pastie.org/582797610:36
whitequarkI find it that more Unix[-way] tools should be able to emit data in a format which is both machine-parseable and human-readable.10:37
wpwrak(yaml) looks like a nice format. not xml ;-) ("oh, but it's all text, so it's very human-readable")12:28
whitequarkwpwrak: yup. it's kinda popular in ruby and python, especially ruby12:38
whitequarkand it allows for a portable way to serialize complex objects12:39
whitequarki.e. you need to output it as text, but you can define which procedure your deserializer must use12:39
whitequarkso there's no need to pass dates in ISO8601 strings and fuzzy-match them on the receiving end :/12:40
whitequarkas json does.12:40
wpwrakhmm, seems that there's a pretty large set of potential optimization bugs (all related to "volatile") behind the critter i found. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=5609816:46
whitequarkwpwrak: don't use volatile, it's broken by design16:53
wpwraknaw, there are fairly reasonable conventions in place that give volatile useful and predictable behaviour beyond what ANSI C specifies16:57
wpwrakbut i would agree that, as far as the standard is concerned, it's broken :)16:58
whitequarkwell you have nice atomics in C++1116:58
whitequarkand maybe you can also have them in C11, I'm not sure16:58
kristianpaulphew new psu :-)16:59
wpwrakkristianpaul: fan reached expiration date ? :)16:59
whitequarkwpwrak: I'd encourage you to read http://gustedt.wordpress.com/2012/01/17/emulating-c11-compiler-features-with-gcc-_atomic/17:00
whitequarkbut from a quick peek, it's far more opaque than the stuff found in C++1117:01
whitequarkyou might or might not find that useful.17:01
wpwrakgcc has some builtins beyond sync ... lemme check ...17:07
wpwrakhttp://gcc.gnu.org/onlinedocs/gcc-4.7.2/gcc/_005f_005fatomic-Builtins.html#_005f_005fatomic-Builtins17:07
wpwraksync is already obsolete: http://gcc.gnu.org/onlinedocs/gcc-4.7.2/gcc/_005f_005fsync-Builtins.html#_005f_005fsync-Builtins17:08
whitequarkyeah. you probably need __ATOMIC_SEQ_CST17:10
whitequarkwhich, on one hand, will insert memory barriers in the compiler, because that's correct semantics17:11
whitequarkbut on other one, the CPU inserts them by itself when you fiddle with I/O memory, so that theoretically shouldn't slow you down17:11
wpwrakbut i find them a bit heavy for what i'm looking for here. my goal is to have a "nice" syntax. and the semantics of volatile allow me to get this, even if it may not be optimally efficient.17:11
wpwraki wouldn't be so sure about the CPU inserting anything for you. some do, others don't ...17:13
whitequarkwpwrak: well, if your CPU has I/O memory and volatile works with it, it does17:13
whitequarkit either does insert the correct barriers or does not have out-of-order execution, that is.17:14
whitequarkthe latter is probably true for Jz474017:14
whitequark(considering it doesn't have SMP anyway)17:14
wpwrakah, you meant OO. i thought of bus locks.17:15
whitequarkyup, you got to flush the store reordering buffer and serialize the pipeline17:15
whitequarkhah. just learned that LLVM can compile code for VLIW DSP targets17:20
whitequarkwhich is quite impressive if you'd ask. http://en.wikipedia.org/wiki/Qualcomm_Hexagon17:21
whitequarkeg it automatically recognizes induction variable when it postincrements over some pointer and converts it to a hardware loop 17:27
wpwrakputting all that analysis it already does for other reasons to good use :)17:29
whitequarkthat is very much true17:33
rohi think the hexagon stuff is quite new17:34
rohafaik thats qualcomms bb arch17:34
whitequarkroh: yes, and it's somewhat WIP17:34
whitequarke.g. the hardware loop stuff is actually a patch on its ML17:34
whitequarkbut still17:34
rohnice. sure. does a disassm exist also?17:35
whitequarkroh: lemme check17:35
rohneed to run.. bbl17:37
kristianpaulwpwrak: dust made its work too...17:40
whitequarkroh: looks like it's not the case17:42
wpwrakkristianpaul: time for someone to develop fans without mechanical bearings :)17:47
whitequarkroh: but gnu toolchain, which is also available, does include a disassembler in objdump, as usual17:47
wpwrakwell, make that _inexpensive_ fans. i'm sure there are some that work very nicely and cost a ton of money.17:47
kristianpaulwpwrak: ;)17:55
whitequarkmake fans with magnetic levitation17:56
wpwrakyeah, that's roughly what i was thinking of17:59
wpwrak8 USD. hmm. and look suspiciously like traditional fans.18:01
wpwrak``According to Sunon, this kind of fan has a life-span of 50,000 hours at “room temperature”''. that's less than for conventional bearings. http://www.hardwaresecrets.com/printpage/Anatomy-of-Computer-Fans/103918:03
wpwrakmaybe a bit more tech needs to be thrown at that problem. such a fan should in theory live forever. you could seal it completely, so if it gets dirty, rinse off the worst, then toss it into the dish washer.18:07
wpwrakthen all you get would be abrasion by particles floating in the gaps, plus any aging of materials. both should be negligible. of course, such a design may be a bit heavy ...18:08
wpwrakor just wait for quantum physics to finally crack that theory of everything and then use a directed gravitational field to move that air. (with appropriate dampening, of course)18:12
whitequarkhttp://llvm.org/devmtg/2011-11/videos/Simpson_PortingLLVMToADSP-desktop.mp420:22
whitequarkI also find it quite hilarious that Qualcomm open-sourced their DSP effort20:22
whitequarkgiven all that stuff about "let's only allow GPL plugins so evil proprietary vendors won't write them". and qualcomm for sure fits the definition of an evil proprietary vendor.20:23
whitequarknot only opensourced, but they even do it within the usual community contribution process20:24
whitequarkand not just post patchbombs no one could make sense of20:24
wpwrakwhitequark: breaking news: scientists have detected strong evidence that developers are able to learn, if given enough time and mistakes. ;-)22:48
whitequarkwpwrak: ... however, the same couldn't be said about managers ;)22:49
wpwrak... or the beancounters at finances22:51
whitequarkindeed. "beancounters", I like that word22:53
wpwrakone theory is that managers fulfill an orwellian role to maintain a good team spirit among the developers, acting as everyone's external inscrutable enemy22:53
qi-bot[commit] Werner Almesberger: ubb-la/Makefile (CFLAGS): use more specific -O9 -fno-tree-cselim (master) http://qi-hw.com/p/ben-blinkenlights/09de24522:57
qi-bot[commit] Werner Almesberger: ubb-patgen/Makefile (CFLAGS): use more specific -O9 -fno-tree-cselim (master) http://qi-hw.com/p/ben-blinkenlights/a947b5e22:57
--- Sat Jan 26 201300:00

Generated by irclog2html.py 2.9.2 by Marius Gedminas - find it at mg.pov.lt!