| <<<Back 1 day (to 2013/09/23) | 2013/09/24 |
AmR|EiSa | Hello | 03:41.26 |
ghostbot | what's up, amr|eisa | 03:41.26 |
AmR|EiSa | ghostbot : very good, what about u ? | 03:42.16 |
| how I need to get all setup arguments for Ghostscript on windows, can any one help ? | 03:42.20 |
sebras2 | Amr|EiSa: the main ghostscript devs will probably not be here for a few more hours. | 03:43.14 |
AmR|EiSa | k | 03:44.22 |
sebras2 | AmR|EiSa: they are located in eu and us so, they are probably still sleeping. :) unfortunately I don't know enough about gs to help you. | 03:49.24 |
AmR|EiSa | sebras2: Thanks :) | 04:02.11 |
mvrhel_laptop | ok. I believe I know what needs to be done to get non-isolated knockout groups working in gs finally. | 04:55.39 |
| and with that I am calling it a night | 04:55.49 |
sebras2 | chrisl: zao'an! :) | 06:38.54 |
chrisl | sebras2: good morning - how's things? | 06:39.13 |
sebras2 | chrisl: slowly getting rid of the jetlag and adapting to the temperature. :) | 06:39.45 |
chrisl | I take it's warm, then? | 06:40.16 |
sebras2 | chrisl: 30°C. which makes it a tad too hot for me walking in the sun... | 06:41.39 |
chrisl | sebras2: yeh, that's a few degrees too warm for my taste, too. Is it humid or dry? | 06:42.24 |
sebras2 | chrisl: usually humid. | 06:43.08 |
chrisl | ick :-( | 06:43.14 |
sebras2 | chrisl: I have also discovered that western blood is delicious for eastern mosquitoes... /me has four big bruises(!) on my legs. :) | 06:44.10 |
chrisl | sebras2: you'll have to get the mozzie repellent spray | 06:45.23 |
sebras2 | chrisl: mmm, first I need to find out how to say that in chinese. but I got a compliment for my pronunciation today. :) | 06:47.10 |
chrisl | sebras2: well, that's good - maybe you can ask the mozzies not to bite you ;-) | 06:48.12 |
AmR|EiSa | how I need to get all setup arguments for Ghostscript on windows, can any one help ? | 06:53.39 |
kens | The Ghoswtscript command line options are documented in gs/doc/use.htm | 06:54.10 |
chrisl | AmR|EiSa: all the supported installer arguments are in the FAQ | 06:54.44 |
Robin_Watts | paulgardiner: Just popping out, but there are 3 reviews up for you or tor7, please. | 08:32.42 |
paulgardiner | no probs | 08:34.34 |
| Robin_Watts: first and third look fine. With the second, I wonder if you might miss a failed seek - whether it should instead be: | 08:49.36 |
| while (offset > 0) | 08:49.44 |
| { | 08:49.46 |
| if (fz_read_byte(stm) == EOF) | 08:50.04 |
| break; | 08:50.13 |
| offset--; | 08:50.19 |
| } | 08:50.21 |
| I may be confusing myself | 08:50.49 |
tor7 | Robin_Watts: paulgardiner: I think paul's onto something with the seek fail on EOF loop | 09:17.00 |
| the EOF will count as one byte when comparing the offset | 09:17.12 |
paulgardiner | Yeah, that's what I was wondering | 09:18.29 |
Robin_Watts | back, | 10:36.11 |
kens | Robin_Watts : : when you have a minute: | 10:37.12 |
| http://stackoverflow.com/questions/18975881/how-to-extract-text-from-pdf-using-mupdf | 10:37.12 |
Robin_Watts | kens: answered. | 10:42.10 |
kens | thanks | 10:42.14 |
Robin_Watts | tor7, paulgardiner: So your worry is that we might not warn in all cases? | 10:42.36 |
tor7 | Robin_Watts: it's wrong. it's harmless, but wrong. | 10:43.07 |
| we shouldn't have wrong. | 10:43.15 |
Robin_Watts | I agree. Just checking that I'm understanding my mistake correctly. | 10:43.41 |
tor7 | Robin_Watts: right. there's one corner case where it could go wrong, as I read the code. | 10:44.07 |
| by not warning when it ought to | 10:44.14 |
Robin_Watts | gotcha. will fix. | 10:44.22 |
| Thanks, and well spotted! | 10:44.30 |
| chrisl: Do you have the ftp site details for me to download the stuff for the mail to support please? | 10:45.09 |
chrisl | Robin_Watts: Oh, maybe.... give me a few minutes | 10:45.44 |
paulgardiner | tor7: I have reflow mode working in iOS but hardcoded. I now need a button! :-) I see you've mostly used the system ones. Not sure there are any remaining that would suit reflow | 10:45.53 |
Robin_Watts | while (offset-- > 0) if (fz_read_byte(stm) == EOF) { fz_warn(...); break; } | 10:46.18 |
tor7 | paulgardiner: I hate the look of the system buttons in iOS 7, so if you're going to do anything please replace them! | 10:46.54 |
| Text or our android icons, both would be fine by me | 10:47.06 |
Robin_Watts | http://icons8.com/free-ios-7-icons-in-vector/ ? | 10:47.40 |
paulgardiner | tor7: Maybe our android buttons, but inside rounded rects | 10:48.29 |
Robin_Watts | Apple own rounded rects, remember. | 10:48.47 |
tor7 | Robin_Watts: nooo, the ios 7 icons are too spindly | 10:49.07 |
| but our android icons in a standard ios button, or just flat like our android app, whichever is easier and/or more appropriate | 10:49.38 |
Robin_Watts | has avoided updating his itouch so far. | 10:49.38 |
paulgardiner | I think I've found a suitble one from that link under Movie genres :-) | 10:51.10 |
| tor7: If I use the android ones flat it might look odd with the rest of the UI, and with the Library button | 10:52.12 |
Robin_Watts | paulgardiner: The one that suggests softness and flexibility? I noticed that icon too. | 10:52.52 |
paulgardiner | Robin_Watts: that's the one | 10:53.04 |
Robin_Watts | Updated commit. | 11:05.37 |
tor7 | paulgardiner: have you tried the app on ios7? I spotted some odd bug with the positioning of the scrollview when hiding/showing the toolbars | 11:07.18 |
| might have something to do with the workaround I added for the "automatic" adjustment that the framework did to the scroll position when hiding/showing toolbars before, that might not be needed anymore (or been made more difficult to work around) | 11:08.07 |
paulgardiner | tor7: No. I was nervous of updating the ipad and then not being able to test 6.1 | 11:08.08 |
tor7 | paulgardiner: fair enough. but do give the ios7 version a spin in the xcode simulator. you can have both old and new Xcode installed at the same time. | 11:08.39 |
paulgardiner | Right okay | 11:08.55 |
| Robin_Watts: yeah. Looks fine to me. | 11:09.22 |
Robin_Watts | Ta. | 11:09.29 |
tor7 | paulgardiner: I have ios7 on my ipad2 (which I guess I could give you next we meet, if you need to test on different bits of hardware) | 11:09.30 |
paulgardiner | Thanks. I'll see how it goes. I might add the new features and then update and test. I also have my iTouch on 5, but I could let that update to 6.1 and the ipad to 7 maybe | 11:11.13 |
tor7 | paulgardiner: it's impossible to downgrade so beware | 11:12.52 |
paulgardiner | What's the lowest version Appler are accepting for the store? I guess it's no point testing below that | 11:14.04 |
tor7 | no idea, but I think below 5 would be pointless (maybe even 6) | 11:18.51 |
| my partner is still running ios 5 on an iphone 3, not enough space left on the device to upgrade... | 11:19.38 |
paulgardiner | I have an old device (lent to Linda at the moment) running 3.1. I don't think Apple provide anything higher for it. Not big enough to use as a coaster either! | 11:24.50 |
Robin_Watts | paulgardiner: Really? Is that an old itouch? | 11:25.28 |
paulgardiner | yeah. I haven't connected it to itunes for ages, so possibly there has been an upgraded for it, but I remember its being stuck on 3.1 for a long time after other devices were much further on | 11:26.41 |
Robin_Watts | I have the oldest 64Gig itouch going, and I think that can take ios7. This is why I tend to advocate buying stuff with lots of memory. | 11:27.26 |
paulgardiner | Robin_Watts: Oh right. I must try connecting it again | 11:34.23 |
Robin_Watts | Mine is a 3rd Gen one I think. | 11:35.00 |
| The 16Gig ones are 2nd gen, and may not be upgradable. | 11:35.16 |
paulgardiner | I think mine might be first gen | 11:40.13 |
| tor7: I changed all the buttons to be based on our android resources, and it all seemed to work, except I only see one of the two prev/next buttons in search mode. I see whichever I put first in the list I pass to setRightBarButtonItems. Have you ever come across weirdness like that? | 13:02.48 |
tor7 | paulgardiner: nothing that rings a bell, no. I'd check for typos... | 13:04.50 |
| or did they overflow the size allowed? | 13:05.09 |
paulgardiner | I don't know. I just added them to the initial bar and they appear. | 13:06.18 |
| ... so doesn't look like a typo. | 13:06.54 |
| Maybe the text widget is getting priority for space | 13:07.18 |
| If I comment out the line [[self navigationItem] setTitleView: searchBar] then they appear. | 13:10.36 |
| Displays fine if I call setTitleView after setRightBarButtonItems. | 13:24.36 |
kens2 | Robin_Watts : ping | 13:39.59 |
kens | seems my network has caught Robin's problem | 13:45.43 |
paulgardiner | kens: Nasty. Insanity follows shortly. | 13:47.09 |
kens | Is peeves down at the moment ? | 13:47.23 |
paulgardiner | kens: No. I just logged in okay | 13:47.51 |
kens | Oh I cna login, but when I try to move to Marcos' directory it stops talking to me | 13:48.08 |
| well, using winscp | 13:48.26 |
| OK so it works with ssh | 13:49.42 |
| and if I do 'ls' in /home/marcos/cluster it dies | 13:50.26 |
Robin_Watts | kens2: pong | 13:51.02 |
kens | Robin_Watts : I'm having trouble trusting cluster runs at the moment | 13:51.20 |
| I'm getting inexplicable problems that look like some of my code isn't being copied up | 13:51.34 |
Robin_Watts | kens: Have you created any new files? | 13:51.48 |
kens | Robin_Watts : that's why I'm doing this on a branch | 13:52.00 |
Robin_Watts | You need to git add the files or they won't get copies. | 13:52.17 |
kens | I get weird results, like if I commit the files I get differently wrong results to not comitting | 13:52.20 |
Robin_Watts | copied. | 13:52.20 |
kens | Robin_Watts : they are added in the branch | 13:52.31 |
| I was trying to copy back some of the source from peevesm but its not talking in the cluster directory, it sulks when I try to ls there | 13:53.06 |
| Is there anywhere else I can copy files back from, to see what actually got copied to the servers ? | 13:53.53 |
Robin_Watts | kens: Well, if you log into casper, and look in /home/regression/cluster/gitbridge/ghostpdl that's where it copies the file to. | 13:53.56 |
kens | Right, and if I delete the files there, will I get guaranteed new files copied ? | 13:54.22 |
| Or is that a really bad idea ? | 13:54.28 |
Robin_Watts | kens: DO NOT DO THAT. | 13:54.35 |
| please. | 13:54.39 |
kens | :-) | 13:54.40 |
Robin_Watts | If you look in your local repo, you should see 'cluster/kens' | 13:55.00 |
| that's what got copies. | 13:55.06 |
| copied. | 13:55.08 |
| I am tripewryting worse than usual today. | 13:55.20 |
kens | I don't have a cluster subdirectory under ghostpdl or ghostpdl/gs | 13:55.45 |
Robin_Watts | no, in your local repo, there is a branch cluster/kens | 13:56.23 |
kens | Hmmmm, I can switch to that I guess | 13:57.01 |
| Well the code on casper looks OK, so why do I get utterly different results ? :_( | 13:58.35 |
| OK so where are the command lines used for each run ? I thought they were in the lgo but I can't find them now | 14:05.18 |
Robin_Watts | kens: Urm... | 14:07.06 |
kens | My obvious next step is to reproduce the cluster test using the same command line, but I can't find it any more | 14:07.38 |
| Oh interesting, the logs for a commit test are different | 14:08.27 |
| If I look at say angstroms log from the last GS commit I see the command lines. If I look at the log in my last local test, I don't | 14:09.08 |
| So now I'm *really* confused :-) | 14:09.45 |
Robin_Watts | kens: That's one for marcosw to answer I'm afraid. | 14:09.50 |
| http://ghostscript.com/regression/cgi-bin/clustermonitor.cgi?log=log&machine=angstroms&report=robin | 14:10.02 |
| That shows command lines. | 14:10.07 |
kens | Yes indeed. But click on the '+' on my name, then look at one of the logs there | 14:10.24 |
| You *do* see a difference ? | 14:11.28 |
Robin_Watts | I do. | 14:11.39 |
kens | OK so I'm not completely mad | 14:11.47 |
Robin_Watts | And I cannot say why. | 14:11.48 |
kens | Maybe I can bodge up a command line fromteh GS logs | 14:12.14 |
| Looks like I cna find somethign similar enough | 14:12.49 |
chrisl | kens: I saw that log output a couple of months ago, after a few minutes it "fixed" itself....... | 14:13.01 |
kens | O.O | 14:13.13 |
| That's even more worrying.... | 14:13.26 |
chrisl | I *think* it's a side effect of how it collects the performance data | 14:13.49 |
kens | Hmm, OK, maybe it will get better eventually | 14:14.05 |
chrisl | You can get the command line from other people's run logs, though | 14:14.25 |
kens | I'm bodging something up from the GS logs | 14:14.49 |
| aha, that does it, its Marcos' habit of putting a resolution in the pdfwrite command line. FInally I have a problem to look at :-) | 14:16.52 |
| Oh good grief, and immediately I can see the bug, thanks both of you | 14:18.56 |
paulgardiner | tor7: I think we now have reflow mode. There are 3 iOS commits on paulg/master, and one little android commit. | 14:22.02 |
tor7 | paulgardiner: eww! factories! ;) | 14:24.59 |
| paulgardiner: so, DocRef is only there because fz_document doesn't have keep/drop refcounting? | 14:26.02 |
paulgardiner | tor7: possibly unnecessary: I didn't realise when I added them that there is only one place where you create the pages | 14:26.09 |
| tor7: Yeah, DocRef can come out when we add ref counting to fz_doc | 14:26.35 |
tor7 | it's a very small 1-line "factory", which is hidden by all the OO architecture overhead. if you still want a "factory" at least just make it a function not a full blown class. (hmm, I haven't seen many factories in ObjC code before, but lots and lots of it in Java...) | 14:28.27 |
paulgardiner | tor7: yeah, I was already thinking I might want to get rid of that. | 14:29.35 |
| It would have been handy if several classes were creating pages in several of their methods | 14:30.08 |
tor7 | argh! it looks like nvidia is overselling their path rendering extension when it comes to "oh, you can totally use it for clipping" but in practice you're severely hampered by (a) the limited bit depth of the stencil buffer, and (b) the fact that they use multiple bits in the stencil buffer to do the non-zero-winding fill rule by counting in the stencil buffer... | 14:30.14 |
| and also by not providing any examples of clipping in their demos | 14:31.22 |
Robin_Watts | tor7: AIUI they use 8 bits normally for counting, but just 7 bits when they are going to combine it with a mask that's already held in the other bit? | 14:39.20 |
tor7 | Robin_Watts: my reading of the spec, you give it a mask of which bits to use when counting | 14:40.30 |
| http://developer.download.nvidia.com/assets/gamedev/files/GL_NV_path_rendering.txt | 14:40.32 |
Robin_Watts | I'm just going by what I read in their paper. | 14:41.02 |
tor7 | StencilFillPathNV(path, fillMode, mask) | 14:41.12 |
| fillMode is INVERT or COUNT_UP | 14:41.18 |
| "COUNT_UP_NV adds with modulo n arithmetic the winding number of each sample with the sample's prior stencil buffer value" | 14:41.58 |
| "the result of this addition is written into the sample's stencil value but the bits of the stencil value not set in the effective /mask/ value are left unchanged" | 14:42.16 |
| so we must have enough bits left in the stencil to do the counting without overflow if the winding number is high | 14:43.21 |
Robin_Watts | right. | 14:43.49 |
| How often do we count that high? | 14:44.02 |
tor7 | ususally? not very. | 14:44.16 |
| but there are bound to be test files that have complex self-intersecting paths | 14:44.34 |
Robin_Watts | tor7: right. | 14:44.53 |
paulgardiner | tor7: update commits pushed - MuPageViewFactory is dust | 14:45.54 |
tor7 | their examples use the stencil buffer to count, then test the stencil value != 0 -> cover the sample | 14:45.56 |
| but that means using the full number of bits; we'd need to coalesce that test down to a single bit if we want to do a stack of clip operations | 14:46.49 |
| they have a big sample app, an svg viewer, but that's all full of icky object oriented spaghetti c++... | 14:47.11 |
Robin_Watts | tor7: I'm sure in their paper they talked about using 7 bits + 1 to hold the old mask to do intersecting masks. | 14:48.11 |
tor7 | Robin_Watts: I've read all the papers on their website, and saw no mention of how they implemented clipping | 14:48.38 |
| 7bits + 1 for mask is what I want, but then you have to go from 7bits + 1mask to 6 bits + 2 mask for the next level of mask clipping | 14:49.17 |
| or copy the stencil buffer to temporary storage to pop the clip stack | 14:49.53 |
| and doing that copy, I fear is going to kill any performance gained by using the nvidia path extension | 14:50.28 |
| so I'm just trying to see if there's something clever they've thought of that I've missed | 14:50.51 |
Robin_Watts | tor7: You only need to drop to 6+2 if you're trying to avoid redrawing masks to the stencil buffer multiple times, right? | 14:51.33 |
tor7 | Robin_Watts: yeah. one way would be to store the drawing commands to recreate a clip mask at any given level | 14:51.59 |
| but you still need to drop down from 7 bits to 1 | 14:52.09 |
Robin_Watts | tor7: yeah. | 14:52.19 |
tor7 | in order to do subsequent clipping | 14:52.20 |
| softmasks are going to be hell though :( | 14:52.44 |
Robin_Watts | Well, you draw the first to 8, then 8 to 1, then draw the next to 7, then do 7+1 -> 1 | 14:53.14 |
tor7 | Robin_Watts: yeah. it needs a second pass to go from N to 1 | 14:53.32 |
Robin_Watts | would you do softmasks using the stencil buffer? I'd assumed that would be done as a combination of textures. | 14:53.45 |
tor7 | Robin_Watts: I'll do it as textures. but it needs funky interaction with multiple stacks as well. | 14:54.08 |
Robin_Watts | yeah, I don't doubt it. | 14:54.23 |
tor7 | and even worse when using transparency groups as soft masks... icck. | 14:54.33 |
| but well, I'll save that for later :) | 14:54.40 |
henrys | meeting soon just reading the agenda for todo stuff. | 14:58.46 |
| tor7:looks like the GL stuff is moving forward. | 15:01.31 |
| paulgardiner, Robin_Watts:anything for the meeting? I don't really have anything other than what is on the agenda. | 15:03.23 |
Robin_Watts | henrys: I've got a first pass at the android java jni bindings up on robin/jni. | 15:04.15 |
| Feedback would be good on it before I go any further. | 15:04.35 |
mvrhel_laptop | I have gotten no mupdf stuff done. been clearing my list gs segv fuzz bugs this past week | 15:04.49 |
Robin_Watts | I've just been sucked into optimising pdf14 for rays customer. | 15:04.53 |
mvrhel_laptop | Robin_Watts: I saw that | 15:05.01 |
henrys | wow that was fast, I'll pull it but I think all mupdfer's should have a look at that | 15:05.10 |
paulgardiner | henrys: Still working away at the iOS app. I believe I've fixed the bugs that showed up in iOS 6.1 and I now have reflow mode working. | 15:05.15 |
Robin_Watts | mvrhel_laptop: I have an idea about a way to do it, but you may not like it :) | 15:05.25 |
mvrhel_laptop | just dont break anything :) | 15:05.40 |
| I am going to be adding in the non-isolated knockout groups this week I hope | 15:06.01 |
henrys | paulgardiner: oh great , we can get you a more up to date mac development environment if you like - a macbook pro for example. | 15:06.31 |
| paulgardiner: I'm not sure how dated your mini is. | 15:06.48 |
Robin_Watts | henrys: he's got a neighbour selling an imac :) | 15:07.03 |
henrys | looking at all the mac computer products the iMac has the bang for the buck I think. | 15:07.59 |
Robin_Watts | My broadband is still knackered, BTW, so pardon any sudden disappearances. | 15:08.30 |
paulgardiner | henrys: Coo! Never ending toys!! See how it goes. I seem to be doing okay on the mini. A macbook would be handy if I turned out to be working on iOS over a meeting, but it's quite an expense just for that. | 15:08.44 |
mvrhel_laptop | Robin_Watts: one way to get some performance in this device is to just do all the color spaces in the transparency group as gray since it is a monochrome device | 15:08.45 |
paulgardiner | henrys: the ipad is very nice, btw | 15:09.08 |
Robin_Watts | mvrhel_laptop: I was thinking of a much dumber solution than that. | 15:09.12 |
mvrhel_laptop | wow. I thought that was a dumb solution | 15:09.25 |
Robin_Watts | mvrhel_laptop: No, that would require me to understand what the code is doing :) | 15:09.44 |
mvrhel_laptop | and pretty easy to do | 15:09.48 |
henrys | Robin_Watts: preposterous | 15:10.12 |
mvrhel_laptop | no, you just override the color space each time with gray | 15:10.16 |
henrys | tor7:anything for the meeting? | 15:10.23 |
Robin_Watts | The current code is of the form: for (x...) for (y ...) { if .... else ... blend if ... else ... } | 15:10.32 |
| where there are many ifs. and the blend is actual lots of ifs too. | 15:10.46 |
| It'd be nicer to pull the if's out of the loop. | 15:11.04 |
mvrhel_laptop | yes. | 15:11.16 |
henrys | paulgardiner: I wonder what iOS 7 will be like, I've heard lots of user whining but not much devel-wise. | 15:11.51 |
Robin_Watts | And tor7 has a cunning trick he does in mupdf to allow the compiler to expand optimised versions of a single function out from a single source, so we wouldn't need to fundamentally do all the copy/pasting and maintainence on multiple versions. | 15:12.39 |
mvrhel_laptop | hmm | 15:13.11 |
| sounds like fun to debug | 15:13.23 |
| henrys: I have to run my daughter to school. I will we back before the gs meeting. I don't have any mupdf stuff today. | 15:13.30 |
Robin_Watts | mvrhel_laptop: No, that's the point. | 15:13.32 |
| It's almost no change to the code as is now. | 15:13.41 |
henrys | mvrhel_laptop: okay | 15:13.44 |
Robin_Watts | but it produces lots of optimised versions. | 15:13.55 |
henrys | Robin_Watts: how's that #include a c file? | 15:13.55 |
Robin_Watts | henrys: No. It uses static inlines. | 15:14.07 |
paulgardiner | henrys: Tor has his ipad running 7, and apparently it does cause some problems with our app. I don't want to update the ipad to 7 yet because it's handy to be able to ttest 6.1, but I'll see if I can test with the emulator | 15:14.08 |
Robin_Watts | I'll put a patch up for you to look at later. | 15:14.23 |
henrys | Robin_Watts: wondering if it something to be used in gs | 15:15.03 |
Robin_Watts | henrys: This would be in gs. | 15:15.15 |
henrys | well let's adjourn I'm trying to keep the agenda up to date so if you see something that should be struck (marked done) let me know. | 15:18.33 |
tor7 | henrys: no, I'm just lurking (and wrapping my head around reading opengl specs for this nvidia path clipping stuff I just talked a bit about with robin) | 15:19.24 |
henrys | tor7:well it does seem like an interesting project, something a bit different at least. | 15:20.08 |
Robin_Watts | mvrhel_laptop: Someone has tweaked pdf14_mark_fill_rectangle since the customers version. | 15:21.04 |
| ah, yes, me :) | 15:23.02 |
paulgardiner | tor7: Are you happy with the commits, not that the factory has been excised? | 15:23.22 |
| s/not/now/ | 15:24.33 |
henrys | paulgardiner: thanks for the win driver info. | 15:30.20 |
tor7 | paulgardiner: the code looks nicer now, but perhaps you ought to squash the commits (you introduce then remove the Factory in separate commits) | 15:31.09 |
paulgardiner | henrys: no probs. Wish I could remember more about it. | 15:31.09 |
| tor7: Did I not? | 15:31.31 |
| Oh | 15:31.53 |
| I forgot I introduced the factor in that first commit. | 15:32.06 |
| Okay, sorry. Didn't spot that | 15:32.16 |
| That's a pain. I didn't really want to squash the DocRef one in. I'll have a fiddle with it | 15:35.18 |
henrys | kens, chrisl:this apparently came out 2 years ago and I missed it: http://www.youtube.com/watch?v=hVBrkdHP4ZI&feature=youtu.be | 15:47.57 |
chrisl | henrys: and as with so many other things from GG, heard nothing about it since? | 15:49.37 |
henrys | it's interesting they mention atom though - that is the same time period we were working with the atom group. | 15:50.16 |
chrisl | But for different target markets, IIRC? | 15:50.53 |
Robin_Watts | henrys: They were talking about atom *in* the printer, right? | 15:51.11 |
henrys | yes | 15:51.55 |
| actually both in printer and host based. | 15:52.36 |
| meeting time | 15:58.44 |
| fyi customer 801 is now p1 I think we should check in with them and see how they are doing? I can do it or ray_laptop might be a better choice. Let me know ray_laptop. | 15:59.39 |
paulgardiner | tor7: Try that. Now hopefully all signs of the factory are gone | 16:00.24 |
henrys | marcosw: did we say I could reclassify these luratech bugs? | 16:01.19 |
mvrhel_laptop | I am back | 16:01.32 |
henrys | marcosw: can we make a luratech user and reassign them? | 16:02.07 |
ray_laptop | henrys: I'll ping them since I haven't heard since my last email to them | 16:02.34 |
henrys | actually 801 is P1+, so anything we can do would behoove us. | 16:02.46 |
marcosw | henrys: I can make a dummy bugzilla user for the luratech bugs. | 16:03.03 |
| just for the fuzzing ones, right? | 16:03.35 |
henrys | marcosw: that would be great and since you know how to turn off email and all that can you reassign them? | 16:03.36 |
chrisl | henrys: did you watch that video through? | 16:03.55 |
henrys | yes just the fuzzing and valgrind business | 16:04.16 |
| marcosw: if there's a bug I'd like to keep the assignment. | 16:04.36 |
| chrisl: with one eye, yes? | 16:04.44 |
marcosw | we were also discussing creating an account for the mupdf bugs that are now assigned to support. That wouldn't be a dummy account, but presumably an @artifex.com alias that gets forwarded to tor7 and Robin_Watts. | 16:05.25 |
chrisl | henrys: it just seemed like a rather pointless demo - showing driverless printing, using a computer with a driver in it....... | 16:05.30 |
henrys | we'd be very overjoyed to do a pointless demo with Intel! | 16:06.58 |
chrisl | Having been involved in one or two of that type of thing, it often ends up costing us lots of time and effort, and gets us nothing :-( | 16:07.52 |
henrys | chrisl:it is quite difficult to measure - you may see the direct result as nothing. | 16:09.02 |
ray_laptop | Robin_Watts: if you haven't already pulled in the stuff for cust 532, I've loaded it on peeves /home/ray/ForRobin | 16:09.41 |
Robin_Watts | ray_laptop: I have it, thanks. | 16:09.50 |
henrys | Robin_Watts: sorry to see that come in, sigh. | 16:10.07 |
Robin_Watts | henrys: It's looking bonkers. | 16:10.19 |
chrisl | henrys: if you actually get to the demo stage, there are benefits. Often, you never get to actually doing to public demos..... | 16:10.34 |
Robin_Watts | "We want to save 5 seconds, and we'd like you to do it by optimising this routine that takes 1 second on just one of the 8 pages". | 16:10.44 |
chrisl | Robin_Watts: "the customer is always right" ;-) | 16:11.10 |
henrys | I said this at the other meeting also, trying to keep the agenda up to date, I've notice a few things done and marked them such, if you see something let me know. | 16:11.28 |
mvrhel_laptop | Robin_Watts: and for your next trick.... | 16:12.13 |
henrys | kens:did you have anything for the meeting? In the event you want to escape early. | 16:12.18 |
chrisl | henrys: oh, Shelly mentioned that anyone with a bmcmp password can see the workflowy link - I wasn't sure that's what we wanted? | 16:12.27 |
Robin_Watts | chrisl: well remembered. | 16:13.11 |
henrys | I think it would be best not to have the workflowy link on the dashboard after more thought. | 16:13.24 |
Robin_Watts | I could put it behind the same password file, but only with artifex employees listed in it. | 16:13.46 |
chrisl | Robin_Watts: I'd written it down..... | 16:13.58 |
Robin_Watts | chrisl: so had I, but that was several bits of paper ago. | 16:14.14 |
| henrys: why is it a bad idea? | 16:14.28 |
henrys | I send it out in the email quarterly, certainly that is enough, no? | 16:14.37 |
chrisl | I have it bookmarked, I usually use that | 16:15.04 |
Robin_Watts | I can find it easier on the dashboard than hunting through the email. | 16:15.08 |
mvrhel_laptop | yes. I have it bookmarked too | 16:15.25 |
henrys | the only bad thing is it is unnecessary but if you feel strongly about having than password it. | 16:15.44 |
mvrhel_laptop | and have been referring to it | 16:15.45 |
Robin_Watts | While I remember... There is a new 'Test files' link there too, that lets us download single test files via the web. | 16:16.18 |
henrys | Robin_Watts: this is monochrome so hopefully we are just using one big band right? | 16:16.35 |
Robin_Watts | It's linked in automatically to test reports and bmpcmps viewed on the web. | 16:16.39 |
henrys | anybody else have meeting business? | 16:17.02 |
Robin_Watts | henrys: the customer thing? They seem to write clists, so presumably they are doing that with more than 1 band, right? | 16:17.19 |
chrisl | henrys: fonts (sorry) - contacting URW? | 16:17.33 |
henrys | chrisl:it's on my list and I'll get that unless you would like to start forming a relationship with them. | 16:18.10 |
chrisl | henrys: I'm not fussy - it just depends on whether you get p*ssed off being the go-between | 16:18.51 |
henrys | Robin_Watts: Ideally for mono 600 dpi we'd want no banding but I believe they have to have it - so ray_laptop fixed it to be 1 band but I might be mixed up. | 16:19.34 |
chrisl | IIRC, they have to used the clist to run to their ASIC, or something like that? | 16:20.06 |
henrys | chrisl: well I usually chat with him about other stuff anyway so I don't mind. | 16:20.08 |
| chrisl: yes that is what I thought. | 16:20.21 |
Robin_Watts | but... but... what? | 16:20.21 |
chrisl | henrys: that's fine. | 16:20.33 |
Robin_Watts | The clist is normally read back out and turned into device calls. | 16:20.49 |
| Are you saying they hook the clist at a different level than that? | 16:21.00 |
chrisl | I'm not sure, you'd best check with ray_laptop - I think I spoke about it with Len, so not really the horse's mouth | 16:21.40 |
henrys | Robin_Watts: I would be guessing - ray_laptop did the work. | 16:21.41 |
Robin_Watts | If they are working at the device level, then I don't see why clist or not makes a difference. | 16:21.46 |
| If they aren't working at the device level, then I'm outta here! | 16:21.56 |
| ray_laptop: ping? | 16:22.08 |
henrys | a ray_laptop summoning dance is in order. | 16:22.16 |
Robin_Watts | I have a con-call in 40 mins with them. | 16:22.26 |
mvrhel_laptop | sounds like fun | 16:22.36 |
chrisl | I need a ray_laptop, too, so..... | 16:22.41 |
henrys | I can text him if you guys want. | 16:22.58 |
Robin_Watts | henrys: might be useful if you wouldn't mind. | 16:23.14 |
chrisl | I just need him to review a commit, so I can mail him for that | 16:23.16 |
henrys | let's adjourn if there isn't more. I have an appointment shortly. I will SMS ray now | 16:23.30 |
ray_laptop | sorry -- chatzilla didn't pop up for some reason (usually does when my name is mentioned) | 16:23.39 |
| chrisl: where's the commit to review | 16:23.55 |
henrys | okay I won't ams ray_laptop now | 16:23.59 |
| s/ams/sms | 16:24.05 |
chrisl | ray_laptop: http://git.ghostscript.com/?p=user/chrisl/ghostpdl.git;a=commitdiff;h=6daf1a77 | 16:24.06 |
ray_laptop | chrisl: OK | 16:24.22 |
henrys | ray_laptop:seems like Robin_Watts issue is more urgent. | 16:24.25 |
| bbiaw | 16:24.38 |
Robin_Watts | ray_laptop: So, I have a con-call with your customer in 38 mins, and I'd like to understand some stuff. | 16:24.48 |
ray_laptop | Robin_Watts: OK. go ahead | 16:25.07 |
Robin_Watts | henrys and chris were saying that they are using a clist, but only at 1 band a page or something? is this true? | 16:25.13 |
ray_laptop | Robin_Watts: if the page doesn't have transparency, then it uses page mode (no clist), iirc, but they've gone back and forth | 16:27.09 |
| if it has transparency (as the problem file does) then it uses bands | 16:27.36 |
Robin_Watts | ray_laptop: Only page 2 has transparency. | 16:28.06 |
| so why are they using clist on the other pages? | 16:28.16 |
ray_laptop | Robin_Watts: not sure why. I tried to convince them to use page buffer mode, but they may have decided not to | 16:29.08 |
Robin_Watts | pfft. How to save 5 seconds... don't serialise the page and then unserialise it for no good reason. | 16:29.36 |
ray_laptop | Robin_Watts: that's worth suggesting for them to try. It won't help on the page w/ transparency, and I thought that was the slower one. | 16:31.07 |
Guest11514 | Hi, I have a question: Can you confirm if Enev Design & Consulting is or isn't a part of Ghostscript ? Especially if they have asked permission to redistribute Ghostscript installers on software download websites ? | 16:31.12 |
Robin_Watts | ray_laptop: slowest page is page 1 with no transparency. | 16:31.22 |
| Guest11514: They are not associated with Artifex, the maintainers of gs, no. | 16:31.56 |
ray_laptop | Robin_Watts: I see. Well, suggesting page mode is probably worth a try | 16:31.57 |
Guest11514 | They are doing so here:http://www.softpedia.com/get/System/System-Miscellaneous/GPL-Ghostscript.shtml | 16:32.23 |
Robin_Watts | But as long as they are shipping in accordance with the GNU AGPL, they are entitled to ship it. | 16:32.25 |
ray_laptop | Guest11514: but distributing GPL Ghostscript (mirroring our download site) is fine | 16:32.55 |
Guest11514 | I think they are using the publicatin of Ghostscript installers to attrackt people to their website to buy their other products. | 16:33.38 |
Robin_Watts | Guest11514: OK, the problem with that site appears to be that "Enev Design & Consulting" is listed as the developer for gs, and that's clearly not right. | 16:34.03 |
Guest11514 | Do you think their usage of Ghostscript as a vessel be an infriction of the GPL license ? Or might this be a gray field ? | 16:35.53 |
| Gray area. | 16:36.02 |
Robin_Watts | Guest11514: I suspect it's just that Softpedia has got the developer wrong - possibly because they've assumed the people that uploaded it were the developers. | 16:36.30 |
Guest11514 | Softpedia only has one option available for that field: developer. I'd think that Enev Design & Consulting should at the least mention the correct developer in the description. | 16:37.50 |
| In the recent past the same happened to Chrome Browser on Softpedia. After reporting this they removed the listing. | 16:39.53 |
ray_laptop | chrisl: the patch looks fine. Thanks for fixing this. | 16:43.27 |
Guest11514 | Thanks for the replies, I'll try to have the Softpedia listing revoked. | 16:44.56 |
chrisl | ray_laptop: thanks for checking it - I'll commit it proper tomorrow. I have to head out now. | 16:48.43 |
ray_laptop | Robin_Watts: can you ask Len to include me in the call as well, in case I end up helping on it after you quit for the day ? | 16:55.23 |
Robin_Watts | ray_laptop: Sure. | 16:55.31 |
| ray_laptop: Probably best if you mail len with your number. | 16:55.44 |
ray_laptop | (I didn't see a reply to your request for a dial in to a conf call) | 16:55.59 |
| Len has my number(s) | 16:56.10 |
Robin_Watts | ray_laptop: He mailed me direct to ask for my number. | 16:56.12 |
ray_laptop | Robin_Watts: I see. OK, so he's going to call you. | 16:56.38 |
Robin_Watts | ray_laptop: Yeah. I have mailed to ask him to include you. | 16:57.13 |
ray_laptop | Robin_Watts: I looked at the csv. I am suspicious that the CLIST creation - USER4 is actually the clist creation time. Their screwy performance logs often gets the function wrong | 17:01.49 |
Robin_Watts | ray_laptop: One of the questions I have is to ask exactly how the tool works, and what the groupings are. | 17:02.19 |
ray_laptop | Robin_Watts: I have trouble seeing how a clist that takes 5.7 seconds to write would be able to be rendered in only .4 seconds (clist_playback_band) | 17:03.30 |
Robin_Watts | Well, I can only imagine that the clist writing is including all the interpretation time too ? | 17:03.51 |
| actually, that can't be quite right, looking at page 2's times. | 17:04.17 |
| They still haven't given me something I can actually run, so I can't even do timings for myself on windows. | 17:04.57 |
ray_laptop | Robin_Watts: I'll try the test file with the simulator I have running. | 17:05.31 |
| hurray! I actually got it to build | 17:54.54 |
Robin_Watts | and I just got it to run! | 17:57.09 |
ray_laptop | mine is running too! | 18:06.13 |
| Robin_Watts: BTW, the stdout and stderr of gs are written to c:/temp/z.out | 18:06.35 |
| It's going to be hard to see performance differences. It runs all 8 pages, including writing the files, in 9.4 seconds | 18:08.10 |
mvrhel_laptop | don't you think he should give improvement desires in terms of percentage and not absolute values? | 18:11.36 |
Robin_Watts | mvrhel_laptop: He wants 20% | 18:12.41 |
mvrhel_laptop | oh ok | 18:12.49 |
| I still wonder about forcing the blend color space to be gray always for this device | 18:22.56 |
| that is like a one line change temporarily. and if it made a diff, it would be easy to add as a device param | 18:23.30 |
| ray_laptop: what do you think of that? | 18:23.54 |
Robin_Watts | mvrhel_laptop: Transparency processing for this file is abut 2 seconds in total. | 18:24.09 |
mvrhel_laptop | ok. I had thought you were going to do a bunch of refactoring | 18:24.24 |
| which seems like a lot of work compared to one line | 18:24.31 |
Robin_Watts | mvrhel_laptop: Yeah, I abandoned that idea when I looked at his figures, sorry. | 18:24.56 |
mvrhel_laptop | ok | 18:25.08 |
Robin_Watts | In the profiled run of the simulator I've just done here, 17% of the time is spent in gs_main_run_string_with_length. | 18:25.28 |
| ie. 83% of the time is 'somewhere outside ghostscript'. | 18:25.39 |
| I'm going to assume that it's 20% of the 17% they want to save :) | 18:25.51 |
mvrhel_laptop | oh wow | 18:25.52 |
Robin_Watts | I think they have a wierdass RPC setup that probably confuses the profiler. | 18:26.18 |
ray_laptop | I wonder why they are keeping a tag plane ? It's not like they need it for a monochrome printer | 18:27.45 |
Robin_Watts | ray_laptop: Good question. | 18:28.49 |
| 4.5/17 is spent in z2save and z2restore. So 25% or so. | 18:31.10 |
| ivalidate_clean_spaces | 18:31.54 |
ray_laptop | Robin_Watts: I get 9.3 seconds for all 8 pages (from the /temp/z.out log) and 18.5 total stopwatch time. | 18:32.56 |
| Robin_Watts: so your profiler 83% outside ghostscript doesn't play | 18:33.20 |
| unless that is just counting cpu time, not wait times or times taken by other threads | 18:34.00 |
| Robin_Watts: note that on the simulator, many of the other threads are simulating things that would be in their h/w | 18:34.56 |
Robin_Watts | ok, it's profiling the debug build, so that explains some of it. Let me retry. | 18:36.46 |
| Awesome. The solution as supplied doesn't build in release mode. | 18:40.49 |
| ok, that's better. I now have at least gs being profiled in non-debug mode. | 19:19.36 |
| now only shows as being 11% of the time, but I can just multiply everything by 9 or so. | 19:20.00 |
| 1.69/11 in image_file_continue, 6.51/11 in outputpage | 19:20.49 |
ray_laptop | hmm... the total time doing images in this file isn't very much :-( | 19:39.55 |
Robin_Watts | ray_laptop: I'm just writing an email in which I say that images and transparency appear to be the biggest culprits. | 19:46.28 |
| In particular we seem to be decoding the JPEG to YCC, then converting it to RGB, then writing it in to the clist, then reading it from the clist, then sending it to the ASIC. | 19:47.04 |
ray_laptop | Robin_Watts: from their timings, I don't see all that much in images. | 19:47.10 |
| Robin_Watts: JPEG is YCC, isn't it ? | 19:47.41 |
Robin_Watts | Would be much more sensible to go from YCC -> Greyscale. Much less work in the color conversion, much less in the clist writing/reading/ASIC transfer. | 19:47.46 |
ray_laptop | Robin_Watts: yes, YCC to Gray makes more sense | 19:48.04 |
Robin_Watts | ray_laptop: most typically yes. We can't really avoid the YCC :) | 19:48.06 |
ray_laptop | Robin_Watts: BTW, you may have already, but I recommend making a git in the gs directory so if you end up making changes, it's easy to package up diffs. I sometimes forget to when I get a new code drop from them | 19:56.09 |
Robin_Watts | ray_laptop: oh, smart. will do that. | 19:56.39 |
ray_laptop | I usually just add base and Resource and psi since I don't think I've ever made changes elsewhere | 19:57.29 |
| need lunch... | 20:01.44 |
rayjj | got the new 2950 up with it's disks (RAID 5 with 3 x 750Gb hybrid drives 8Gb SSD) | 20:40.06 |
| marcosw: other than adding you as a user, what do I need to do let you put this on as a a cluster node ? | 20:41.08 |
| Forward 1 day (to 2013/09/25)>>> | |