mas.to is one of the many independent Mastodon servers you can use to participate in the fediverse.
Hello! mas.to is a fast, up-to-date and fun Mastodon server.

Administered by:

Server stats:

12K
active users

#hdf5

2 posts2 participants0 posts today
mgorny-nyan (on) :autism:🙀🚂🐧<p><a href="https://pol.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> jest super. W skrócie:</p><p>1. Oryginalnie, projekt używał systemu budowania autotools. Instalował binarkę h5cc, która — obok bycia nakładką na kompilator — miała dodatkowe opcje do uzyskiwania informacji o instalacji HDF5.<br>2. Później dodano alternatywny system budowania <a href="https://pol.social/tags/CMake" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CMake</span></a>. W ramach tego systemu budowania instalowana jest uproszczona binarka h5cc, bez tych dodatkowych funkcji.<br>3. Każdy, kto próbował budować przez CMake, szybko odkrywał, że ta nowa binarka psuje większość paczek używających HDF5, więc wracano do autotools i zgłoszono problem do HDF5.<br>4. Autorzy zamknęli zgłoszenie, stwierdzając (tłum. moje): "Zmiany w h5cc przy użyciu CMake zostały udokumentowane w Release.txt, kiedy ich dokonano - kopia archiwalna powinna być dostępna w plikach z historią."<br>5. Autorzy ogłosili zamiar usunięcia wsparcia autotools.</p><p>Co stawia nas w następującej sytuacji:</p><p>1. Praktycznie wszyscy (przynajmniej <a href="https://pol.social/tags/Arch" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Arch</span></a>, <a href="https://pol.social/tags/Conda" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Conda</span></a>-forge, <a href="https://pol.social/tags/Debian" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Debian</span></a>, <a href="https://pol.social/tags/Fedora" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Fedora</span></a>, <a href="https://pol.social/tags/Gentoo" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Gentoo</span></a>) używa autotools, bo budowanie przy pomocy CMake psuje zbyt wiele.<br>2. Oryginalnie uznano to za problem w HDF5, więc nie zgłaszano problemu innym paczkom. Podejrzewam, że wiele dystrybucji nawet nie wie, że HDF5 odrzuciło zgłoszenie.<br>3. Paczki nadal są "zepsute", i zgaduję, że ich autorzy nawet nie wiedzą o problemie, bo — cóż, jak wspominałem — praktycznie wszystkie dystrybucje nadal używają autotools, a przy testowaniu budowania CMake nikt nie zgłaszał problemów do innych paczek.<br>4. Nawet nie mam pewności, czy ten problem da się&nbsp;"dobrze" naprawić. Nie znam tej paczki, ale wygląda to, jakby funkcjonalność usunięto bez alternatywy, i tym samym ludzie mogą co najwyżej samemu zacząć używać CMake (wzdych) — tym samym oczywiście psując swoje paczki na wszystkich dystrybucjach, które budują HDF5 przez autotools, o ile nie dodadzą dodatkowo kodu dla wsparcia tego drugiego wariantu.<br>5. Wszystko wskazuje na to, że HDF5 jest biblioteką, której autorów nie obchodzą&nbsp;ich własni użytkownicy.</p><p><a href="https://github.com/HDFGroup/hdf5/issues/1814" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/HDFGroup/hdf5/issue</span><span class="invisible">s/1814</span></a></p>
mgorny-nyan (he) :autism:🙀🚂🐧<p><a href="https://social.treehouse.systems/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> is doing great. So basically:</p><p>1. Originally, upstream used autotools. The build system installed a h5cc wrapper which — besides being a compiler wrapper — had a few config-tool style options.<br>2. Then, upstream added <a href="https://social.treehouse.systems/tags/CMake" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>CMake</span></a> build system as an alternative. It installed a different h5cc wrapper that did not have the config-tool style options anymore.<br>3. Downstreams that tried CMake quickly discovered that the new wrapper broke a lot of packages, so they reverted to autotools and reported a bug.<br>4. Upstream closed the bug, handwaving it as "CMake h5cc changes have been noted in the Release.txt at the time of change - archived copy should exist in the history files."<br>5. Upstream announced the plans to remove autotools support.</p><p>So, to summarize the current situation:</p><p>1. Pretty much everyone (at least <a href="https://social.treehouse.systems/tags/Arch" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Arch</span></a>, <a href="https://social.treehouse.systems/tags/Conda" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Conda</span></a>-forge, <a href="https://social.treehouse.systems/tags/Debian" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Debian</span></a>, <a href="https://social.treehouse.systems/tags/Fedora" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Fedora</span></a>, <a href="https://social.treehouse.systems/tags/Gentoo" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Gentoo</span></a>) is building using autotools, because CMake builds cause too much breakage.<br>2. Downstreams originally judged this to be a HDF5 issue, so they didn't report bugs to affected packages. Not sure if they're even aware that HDF5 upstream rejected the report.<br>3. All packages remain "broken", and I'm guessing their authors may not even be aware of the problem, because, well, as I pointed out, everyone is still using autotools, and nobody reported the issues during initial CMake testing.<br>4. I'm not even sure if there is a good "fix" here. I honestly don't know the package, but it really sounds like the config-tool was removed with no replacement, so the only way forward might be for people to switch over to CMake (sigh) — which would of course break the packages almost everywhere, unless people also add fallbacks for compatibility with autotools builds.<br>5. The upstream's attitude suggests that HDF5 is pretty much a project unto itself, and doesn't care about its actual users.</p><p><a href="https://github.com/HDFGroup/hdf5/issues/1814" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/HDFGroup/hdf5/issue</span><span class="invisible">s/1814</span></a></p>
Howard Chu @ Symas<p>Three Ways of Storing and Accessing Lots of Images in <a href="https://mastodon.social/tags/Python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Python</span></a><br><a href="https://realpython.com/storing-images-in-python/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">realpython.com/storing-images-</span><span class="invisible">in-python/</span></a></p><p>Using plain files, <a href="https://mastodon.social/tags/LMDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LMDB</span></a>, and <a href="https://mastodon.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a>. It's too bad there's an explicit serialization step for the LMDB case. In C we'd just splat the memory in and out of the DB as-is, with no ser/deser overhead.</p><p>Also they use two separate tables for image and metadata in HDF5, but only one table in LMDB (with metadata concat'd to image). I don't see why they didn't just use two tables there as well.</p>
Roadskater, Ph.D.<p>I could have sworn <a href="https://mastodon.social/tags/HDF" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF</span></a> was only up to version 5.something, but maybe I lost track.</p><p><a href="https://mastodon.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a></p>
ing.grid<p>New software descriptor published on ing.grid! "h5RDMtoolbox - A Python Toolbox for FAIR Data Management around HDF5" by Matthias Probst and Balazs Pritz <a href="https://www.inggrid.org/article/id/4028/" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://www.</span><span class="">inggrid.org/article/id/4028/</span><span class="invisible"></span></a> <a href="https://nfdi.social/tags/RDM" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>RDM</span></a> <a href="https://nfdi.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> <a href="https://nfdi.social/tags/python" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>python</span></a> <a href="https://nfdi.social/tags/FAIR" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FAIR</span></a> <a href="https://nfdi.social/tags/kit" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>kit</span></a></p>
DAPHNE 4 NFDI<p>NeXus ist ein in unseren ommunities weitverbreitetes <a href="https://nfdi.social/tags/Datenformat" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Datenformat</span></a>. Es bietet einen Standard, welche Parameter gespeichert und wie sie im <a href="https://nfdi.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a>-Datei strukturiert werden sollen, um <a href="https://nfdi.social/tags/Metadaten" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Metadaten</span></a> zusammen mit den Daten in einer hochstrukturierten Weise zu integrieren.</p><p>Darauf aufbauend gibt es eine maschinenlesbare <a href="https://nfdi.social/tags/Ontologie" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Ontologie</span></a>; diese definiert eindeutige Bezeichner und schafft ein kontrolliertes Vokabular für die Namen aller experimentellen Parameter und gemessenen Variablen im Experiment.</p><p>2/3</p>
DAPHNE 4 NFDI<p>Gestern haben Rolf und Heike beim <a href="https://nfdi.social/tags/NFDI" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NFDI</span></a>-Netzwerktreffen Berlin-Brandenburg unser Daphne-Konsortium vorgestellt. Speziell sind sie auf die Terminologien und Datenformate eingegangen, welche für <a href="https://nfdi.social/tags/Synchrotron" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Synchrotron</span></a>- und <a href="https://nfdi.social/tags/Neutronen" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Neutronen</span></a>-Experimente genutzt werden.</p><p>1/3</p><p>Die Folien gibt's bei Zonodo:<br><a href="https://zenodo.org/records/12728050" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="">zenodo.org/records/12728050</span><span class="invisible"></span></a></p><p><a href="https://nfdi.social/tags/RDM" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>RDM</span></a> <a href="https://nfdi.social/tags/Ontologien" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Ontologien</span></a> <a href="https://nfdi.social/tags/NeXus" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NeXus</span></a> <a href="https://nfdi.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a></p>
Blosc Development Team<p>📢 New 0.2 release of Caterva2, our on-demand framework for sharing Blosc2 (and now <a href="https://fosstodon.org/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> too!) data! 🎉<br>Accessing Blosc2 remotely is becoming easier than ever. <br>More info:<br><a href="https://github.com/Blosc/Caterva2/releases" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">github.com/Blosc/Caterva2/rele</span><span class="invisible">ases</span></a></p>
Maltimore<p>STOP DOING HDF5</p><p>- Years of HDF5 yet no real-world use-case found<br>- Files were never meant to be hierarchical or "self explaining"<br>- "Hello I would like a file system within a file please" ...statements dreamt up by the utterly deranged<br>- Look at what the HDF5 group has been demanding our respect for all this time<br>- wanted to have an explanation for the stuff in a folder? We had a tool for that: it was called a Readme</p><p>They have played us for absolute fools</p><p><a href="https://social.tchncs.de/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a></p>
Howard Chu @ Symas<p><a href="https://mastodon.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> is still a popular file format in scientific computing, but <a href="https://mastodon.social/tags/LMDB" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>LMDB</span></a> is always superior, especially in machine learning. <a href="https://www.reddit.com/r/MachineLearning/comments/1ad6j2i/d_how_to_make_my_training_faster/" rel="nofollow noopener noreferrer" translate="no" target="_blank"><span class="invisible">https://www.</span><span class="ellipsis">reddit.com/r/MachineLearning/c</span><span class="invisible">omments/1ad6j2i/d_how_to_make_my_training_faster/</span></a></p>
Brian Pauw<p>Those of you who have been around this blog a while, know that we have also been dabbling in laboratory automation (see, for example, <a href="https://lookingatnothing.com/index.php/archives/3398" rel="nofollow noopener noreferrer" target="_blank">this post</a>). </p><p>Over the last year or so, led by my former colleague Dr. Glen Smales, we used RoWaN to synthesise over 1200 Zeolitic imidazolate frameworks-8 (ZIF-8) metal-organic framework samples spread over 20 series, while systematically varying many synthesis parameters. Changing seemingly innocuous aspects appears to have a strong impact on the final particle size (distribution), so a correct logging of the metadata is essential for correlating synthesis parameters with morphology. </p><p>We have presented this work several times already in various presentations (one of which should go online soon) and large manuscripts are in the works with the full story. Given the scope of this investigation, preparing these manuscripts eats up a lot of time. Today, I would like to focus on how we structured the synthesis metadata that was collected for every sample. </p><p></p><p>Since small synthesis details might correlate with the resultant particle morphology, we went overboard with the metadata collection. Everything we could think of and get access to, was recorded and integrated in the final structure. This includes such things as bottle opening dates and the humidity in the laboratory. This “everything and the kitchen sink”-approach has saved our bacon a few times in the past when debugging MOUSE measurement issues, and will probably not be out of place here either. </p><p><strong>Data Sources</strong></p><p>The data sources here were varied, we take what we can get, how we can get it: some data comes from the log of RoWaN itself, which can store such things as EPICS messages as well as step messages (e.g. “Start injection of solution 1”, and “Stop injection of solution 1”) in a long CSV file. Some manual steps were recorded manually using predefined messages in predefined cells in the Jupyter notebook. Some instrument readings (density meter reading for example for the stock solutions) is read manually and added to the log by hand. </p><a href="https://lookingatnothing.com/wp-content/uploads/2023/10/image-6.png" rel="nofollow noopener noreferrer" target="_blank"></a><strong>Figure 0</strong>: The DACHS project logo, because every project needs a logo! Image courtesy of Glen Smales. <p>Data on the starting compounds / chemicals and equipment comes from a master Excel file that contains this information in a structured manner across several sheets. We use Excel because it is a pragmatic user-entry system that does not require any training and whose output can be read with Python. It has severe restrictions, though, that would preclude its use in larger projects and an easily-configurable web form solution is still sought (hook me up when you know of one that can take external yaml or json files specifying configuration of pages, parameters, data types and limits). </p><p><strong>Translation, translation, translation</strong></p><p>During my last presentation at <a href="https://www.fairmat-nfdi.eu/events/brian-pauw" rel="nofollow noopener noreferrer" target="_blank">FAIRmat</a>, there was a good set of questions from the audience about if we can (or should) dictate what, and in what format this metadata should be recorded. At the moment, I would shy away from such efforts. On the one hand, it is impossible to predict what you will need in the end, so I would advise to record everything. On the other hand, any additional workload on an already overloaded workforce is bound to be hated, ignored or forgotten, so chances are that you will not get it as you intended anyway. </p><p>Better to encourage recording whatever low-hanging fruit are reachable as automated as possible. You can hook up your heating/stirring plates, syringe injectors, thermometers etcetera to a laboratory network and, with a little effort, continuously read out what they do in whatever format they do it in. Make it as simple as possible to record this, lower the threshold for such documentation, and only require manual documentation if it can somehow absolutely not be avoided. You will get a collection of files and will need to translate that into useful information probably together with some custom knowledge and lots of time stamps. This, in my eyes is unavoidable, although the eventual introduction of a <a href="https://en.wikipedia.org/wiki/Message_broker" rel="nofollow noopener noreferrer" target="_blank">message broker</a> would help greatly. As it is now, we spend a significant portion of our code translating between what we get and what we need, adding some domain knowledge into the code. </p><p>We made a piece of software called DACHS that does this. Most of this code defines generic data classes for the various objects and information entries that we want. Values and units, where possible, get translated into unit-aware quantities with <a href="https://pint.readthedocs.io/en/stable/index.html" rel="nofollow noopener noreferrer" target="_blank">Pint</a>, which makes it <em>extremely easy to do unit-aware calculations</em> with, say, moles, grams and millilitres and combinations thereof. The value of this ability cannot be overstated. </p><p>One non-generic segment of the code, however, is focused on applying those models to our specific data sources, and to subsequently structure these into a specific tree for this experiment. So what does this tree look like?</p><p><strong>The base tree</strong></p><p>We decided to split our base tree into three sections: “Equipment”, “Chemicals”, and “Synthesis”, which contain what they say on the tin (Figure 1). </p><a href="https://lookingatnothing.com/wp-content/uploads/2023/10/image.png" rel="nofollow noopener noreferrer" target="_blank"></a><strong>Figure 1</strong>: the base tree of the synthesis log HDF5 structure (starting on the right, going deeper to the left)<p>The Equipment section contains a list of the equipment used for that particular experiment (this can vary between experiment series). Equipment includes such things as stirrer bars, Falcon tubes and tubing, as this might correlate to the result. Each equipment has detailed information including which PVs, or “Process Variables” they control. These PVs can contain linear calibration information, i.e. split over a calibration offset and a calibration factor , so that:</p><p></p><p>The Chemicals section is split into several parts, beginning with the starting compounds. These contain the base reagents as found in the jars of the suppliers. Each reagent has information such as supplier, CAS number and lot number, as well as jar opening date (if known). It also contains information on the chemical in the reagent, with chemical formula, molar mass, density and space group (if known). See Figure 2 for a bit more information on how deep we go with this. </p><p></p><a href="https://lookingatnothing.com/wp-content/uploads/2023/10/image-1.png" rel="nofollow noopener noreferrer" target="_blank"></a><strong>Figure 2</strong>: Going into a little more detail in the actual tree using the DAWN DataVis explorer. <p><strong>Limitations</strong></p><p>Here, it perhaps behooves to highlight that the solution here is a pragmatic proof-of-principle solution mostly resulting from the effort of less than a handful of people. There are limitations aplenty, for example, there is probably a spate of parameters we are not – but should be – logging. </p><p>One thing I could not figure out how to implement easily is equipment interconnectivity. Equipment is connected on several levels: an electrical level (Figure 3), a virtual level (figure 4), and a synthesis-side physical level (tubing etc, Figure 5). So this information is missing from the structure and only exists as vector graphics hand-drawn using the draw.io software. I’m sure there is a better way.</p><a href="https://lookingatnothing.com/wp-content/uploads/2023/10/image-2.png" rel="nofollow noopener noreferrer" target="_blank"></a><strong>Figure 3</strong>: Equipment connections on the physical/electrical level<p>Then there is the matter of uncertainties. For someone who keeps hammering on about the value of uncertainties and even splitting them up into different classes of uncertainties (“absolute” and “relative”, see the Everything SAXS paper), it is quite hypocritical of me to not have added them here. I decided against it in the end as none of the uncertainty estimates I could come up with were grounded in any sort of realism, i.e. all of them would be guesstimated and therefore would not have any weight to them. Maybe at a later stage it can be improved. </p><a href="https://lookingatnothing.com/wp-content/uploads/2023/10/image-3.png" rel="nofollow noopener noreferrer" target="_blank"></a><strong>Figure 4</strong>: Equipment connectivity on the virtual level<p>Also, I had initially provisioned for a more defined synthesis step (called SynthesisStep), which theoretically should allow classifying each synthesis step. This, in turn, should form a good step (ha) towards automatically recreating a synthesis using another robot. </p><a href="https://lookingatnothing.com/wp-content/uploads/2023/10/MicrosoftTeams-image-1.png" rel="nofollow noopener noreferrer" target="_blank"></a><strong>Figure 5:</strong> Physical connectivity between equipment from the synthesis perspective (tubing and sample motions as indicated by the solid and dotted lines, respectively). Image by way of Glen Smales. <p>in the end I did not include this as the more I worked with it, the more I realised that most of its purpose is already performed by RawLogMessage. And any universality with other robot systems is moot if I don’t tailor it to use the confines of other robot system concepts. </p><p>Here, too, translation will be essential to turn the information contained in these synthesis logs into a synthesis protocol for other robots to use. </p><p><strong>So where to go from here?</strong></p><p>With the information encapsulated in the synthesis files, we can now start exploring. I’ve built a simple dashboard using Dash and Plotly that allows one to plot parameters against another. Additionally, for samples that have been measured already, the scattering pattern and size distribution can be shown too (indeed, the resultant size parameters are plottable too). This allows a bit more information to be gleaned, but the two-dimensional nature of the plotting isn’t really enough to extricate the necessary interparameter correlations. That will require a bit more effort. </p><p>Nevertheless, it’s pretty, and that will suffice for now! (see Figure 6)</p><a href="https://lookingatnothing.com/wp-content/uploads/2023/10/image-5.png" rel="nofollow noopener noreferrer" target="_blank"></a><strong>Figure 6:</strong> The synthesis explorer dashboard. Each dot in the left figure represents a synthesis. For the syntheses whose samples have been measured, the corresponding data, fit and resultant size distribution are shown on the right-hand side. <p><a href="https://lookingatnothing.com/index.php/archives/3720" rel="nofollow noopener noreferrer" target="_blank">https://lookingatnothing.com/index.php/archives/3720</a></p><p><a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/archival-data" target="_blank">#archivalData</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/data" target="_blank">#data</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/hdf5" target="_blank">#hdf5</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/lab-automation" target="_blank">#labAutomation</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/nexus" target="_blank">#nexus</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/robotics" target="_blank">#robotics</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/storage-format" target="_blank">#storageFormat</a> <a rel="nofollow noopener noreferrer" class="hashtag u-tag u-category" href="https://lookingatnothing.com/index.php/archives/tag/synthesis" target="_blank">#synthesis</a></p>
Markus Osterhoff<p>HELPMI:<br>Develop a user-driven <a href="https://academiccloud.social/tags/NeXus" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NeXus</span></a> extension proposal for laser-plasma (<a href="https://academiccloud.social/tags/laser" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>laser</span></a> <a href="https://academiccloud.social/tags/plasma" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>plasma</span></a>) experiments, by <a href="https://academiccloud.social/tags/Helmholtz" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Helmholtz</span></a> <a href="https://academiccloud.social/tags/Metadata" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Metadata</span></a> Collaboration</p><p>Basically, having nice and standardised metadata (e.g. in <a href="https://academiccloud.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> files) for <a href="https://academiccloud.social/tags/pewpew" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>pewpew</span></a> experiments, making data <a href="https://academiccloud.social/tags/FAIR" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>FAIR</span></a> for others – and also more easy to access for yourself ;)</p>
Markus Osterhoff<p>Schönen guten Morgen!</p><p>Beim <a href="https://troet.cafe/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a>-Nutzertreffen geht es in der ersten Sitzung um <a href="https://troet.cafe/tags/NeXuS" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>NeXuS</span></a>: ein <a href="https://troet.cafe/tags/Datenmodell" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Datenmodell</span></a>, welches für verschiedene Experimente das <a href="https://troet.cafe/tags/Datenformat" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Datenformat</span></a> und die erklärenden <a href="https://troet.cafe/tags/Metadaten" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Metadaten</span></a> definiert.<br>Nach der Kaffeepause (mittlerweile durfte bestellt werden!) schauen wir uns sparse arrays, data reduction und lossy compression an: Mut zur Lücke!<br>Am Nachmittag ein kurzer Vortrag zu <a href="https://troet.cafe/tags/Kompression" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Kompression</span></a>, anschließend zwei lange Diskussionsrunden.</p><p>Jetzt aber erstmal <a href="https://troet.cafe/tags/Fr%C3%BChst%C3%BCck" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Frühstück</span></a>.</p><p>Habt's fein heute!</p>
Markus Osterhoff<p>Now we're learning about h5wasm, especially viewing compressed <a href="https://academiccloud.social/tags/hdf5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hdf5</span></a> data files with web assembly <a href="https://academiccloud.social/tags/wasm" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>wasm</span></a>.</p>
Markus Osterhoff<p>Maintenance of <a href="https://academiccloud.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> filters, plugins:</p><p>Who fixes problems?<br>What happens when, filter maintainers disappear?<br>When underyling libraries are no longer maintained?<br>API changes?</p><p>Who cares, who pays?</p>
Markus Osterhoff<p>This week, I'm at <span class="h-card"><a href="https://helmholtz.social/@DESY" class="u-url mention" rel="nofollow noopener noreferrer" target="_blank">@<span>DESY</span></a></span> for the <a href="https://academiccloud.social/tags/HDF" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF</span></a> User Group <a href="https://academiccloud.social/tags/HUG" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HUG</span></a> summit on plugins and data compression.</p><p>We will start with latest updates on plugins:<br>“HDF5 and plugins – overview and roadmap“, Dana Robinson.<br>Then, Elena Pourmal will hopefully have good news: “Expanding HDF5 capabilities to support multi-threading access and new types of storage“.</p><p>Currently, reading big datasets can be quite a burden due to some … challenges of <a href="https://academiccloud.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> with multi-threading.</p>
gauteh<p>New release of hidefix (the fast <a href="https://hachyderm.io/tags/rust" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rust</span></a> <a href="https://hachyderm.io/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> reader) with simpler methods reading an open NetCDF file: <a href="https://github.com/gauteh/hidefix" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="">github.com/gauteh/hidefix</span><span class="invisible"></span></a> </p><p>```<br>use hidefix::prelude::*;</p><p>let i = netcdf::open("tests/data/coads_climatology.nc4").unwrap().index().unwrap();<br>let iv = i.reader("SST").unwrap().values::&lt;f32&gt;(None, None).unwrap();</p><p>```</p>
gauteh<p>Fixed a long standing bug in hidefix (<a href="https://github.com/gauteh/hidefix" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="">github.com/gauteh/hidefix</span><span class="invisible"></span></a>) where <a href="https://hachyderm.io/tags/hdf5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>hdf5</span></a> files with un-aligned chunking failed. 0.7.0 is out. Fast as ever compared to native hdf5 library. <a href="https://hachyderm.io/tags/rust" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>rust</span></a></p>
Markus Osterhoff<p>And after … a couple of days, here the <a href="https://academiccloud.social/tags/bugfix" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>bugfix</span></a> for my <a href="https://academiccloud.social/tags/memoryLeak" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>memoryLeak</span></a><br>It turns out that using <a href="https://academiccloud.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> needs some cleanup routines – that's totally okay, but I have plenty of <a href="https://academiccloud.social/tags/Terabytes" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>Terabytes</span></a> that worked without 🤔</p>
Markus Osterhoff<p>The <a href="https://academiccloud.social/tags/HDF" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF</span></a> User Group will hold their annual European meeting on 19-21 September at <a href="https://academiccloud.social/tags/DESY" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>DESY</span></a>, Hamburg, Germany.</p><p>The special topic of this meeting will be <a href="https://academiccloud.social/tags/HDF5" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>HDF5</span></a> plugins and <a href="https://academiccloud.social/tags/data" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>data</span></a> <a href="https://academiccloud.social/tags/compression" class="mention hashtag" rel="nofollow noopener noreferrer" target="_blank">#<span>compression</span></a>, and the meeting is hosted in collaboration with the LEAPS-INNOV EU project. The HDF Group will give an update on the latest developments within HDF5 and present the roadmap for the future.</p><p><a href="https://indico.desy.de/e/ehug2023" rel="nofollow noopener noreferrer" target="_blank"><span class="invisible">https://</span><span class="">indico.desy.de/e/ehug2023</span><span class="invisible"></span></a></p>