• About Luis Falcon
  • Cookies & GDPR Privacy Policy

MeanMicio

~ Medicine. Open Science. Animal Rights.

MeanMicio

Tag Archives: free software

Parallel and distributed computing in GNU Health

27 Tuesday May 2025

Posted by Luis Falcon in GNU Health, HMIS, tryton

≈ Comments Off on Parallel and distributed computing in GNU Health

Tags

distributed computing, ehealth, federation, free software, gnu, GNU Health, GNU Health Federation, GNUHealth, parallel computing, performance, technology, thalamus, tryton, wordpress

When it comes to large volume of data management, health in general and health informatics in particular are in the top of the list. In this post I’d like to bring the attention on how we can create scalable models in GNU Health using parallel and distributed computing methods.

In the old days – and even today – large areas of the hospitals are dedicated exclusively to store patient medical records. Thousands of charts that make millions of pages.

A medical record officer pulls out a patient chart (source: https://catalog.archives.gov/id/6374585)

The advent of Hospital information systems (HIS) and Electronic Medical Records (EMR) are transforming those paper based records into bits and bytes. The GNU Health Hospital and Health Information System is one example.

GNU Health has many areas that involves loading, processing, searching and transforming large sets of data. Here are some examples that we use in GNU Health daily:

  • Demographics: Individual identification means, gender, addresses, occupations, domiciliary units, insurances, health professionals, institutions
  • Medical records: Patient evaluations, hospitalizations, laboratory and medical imaging orders, prescriptions, medication
  • Coding standards: Datasets that involve coding standards for interventions, procedures (ICPM, ICHI, ICPM..), pathology, health conditions (ICD10, ICD11..)
  • Genomics: Very large datasets involving DNA sequencing, natural variants, genes, …
  • Epidemiology: Statistics are key in early warning systems, outbreak detention and health promotion, disease prevention programs. Those reports can involve massive amount of data to be processed.

I would like to stress the importance of a good parallel or distributed computing model for maximum scalability and performance. One of the main problems is that we have the tendency to emulate in computing our linear lives. The society in which we live in make our daily activities are a set of sequential chronological (dull) tasks (wake up -> bathroom -> breakfast -> work -> […] -> dinner -> sleep) put into a loop.

Designing and Building Parallel Programs by Ian Foster. A great book I bought in 1995 for my Parallel and Distributed system class in computer science. The concepts are still very well alive and it’s part of my bookshelf.

Think parallel. Instead of that, I’d like to think in terms of how our body systems work internally. From the macroscopic organs to the minute hormones and neurons, working simultaneously in beautiful synchrony to maintain homeostasis, the internal equilibrium that keep us alive and well. It would be impossible to make a linear, sequential loop to process the events happening in a single second of our lives. Parallel processing makes the miracle. All the “workers”, “processes” and their signaling (“IPC” interprocess communication in computer science terms) make it happen.

A real life example: If we don’t do a good design, the project will not scale. Maybe, at the beginning, with a few records, our system will perform ok. With time, our database will become larger and if initially we had one hundred patients, and all of the sudden, we have reached 1 million. Each person and patient in that million population set has their own medical record, demographic history, lab tests.. you get the idea… doing analytic reporting, exporting or importing data will not scale if we don’t have a good design.

The following is a real life example that involved the migration to the latest version of GNU Health HIS of our community server. checking and syncing the values stored on the datasets residing on the filesystem (for instance, updating to the latest version of the UniProt human genes natural variants) with those in the database. In total, we had near 150,000 records to sync. GNU Health HIS uses Tryton, a great Free/Libre framework on top of Python and PostgreSQL. What it might seem a trivial task, it’s not. When we increase the verbosity, syncing each record involve a lot of tasks such as login in, checking user permissions on the model, status of the record, verify that it was not changed after the last update, etc.. If we had 100 records, we may afford linear processing. With a set of 150K, we must look for a parallel computing solution.

I have experienced similar situations when we have to migrate the medical records from another system to GNU Health. The initial batch input upload might contain thousands / millions of records. Making a good parallel model design will transform days into hours, hours into minutes and minutes into seconds.

Processing time of syncing a set of 500 records comparing and updating the values from the filesystem and the current database record. We compared the time using a sequential loop (first bar), the 8 processes corresponding to the (second bar) and finally 16 processes. The best result was achieved using eight processes (90 seconds). Sequential loop had the worst performance (318 seconds), followed by 16-parallel processes (97 seconds). I used the Proteus library for Tryton 7.0 and the Python 3.13 Multiprocessing package. The test was done on my small laptop running Void Linux, PostgreSQL 16, linux kernel 6.12. Hardware: 12GB of RAM and Intel i7 Thinkpad (8-core)

The GNU Health Federation: Distributed computing for large health networks.

The GNU Health Federation is another example of how to create scalable systems in health. In this case, instead of using multiple processes within a single computer, we are setting multiple “workers” that we call nodes across a province, country or region. A node can be an individual using MyGNUHealth personal health record, a laboratory or a hospital. Each of them work independently and they can communicate via the network. Data aggregation and reporting will happen at the GNUHealth Health Information System server, a special, document-oriented PostreSQL database.

Diagram of Thalamus, the GNU Health Federation message server and the different nodes that make a distributed health network

Summary: Make a big problem small. Think parallel.

In the end, whether you use multiple processes in the same computer or make different nodes in the health network, the concept is pretty much the same. Make a big problem small. The PCAM design methodology is a great start. PCAM stands for Partition, Communicate, Agglomerate and Map. Decompose the initial problem in smaller domains (data) and functional (computational) units, design the way they talk to each other, combine (agglomerate) the tasks and finally map those tasks to processors.

It is also important to know your resources so you can dimension and design the solution to the problem. For instance, in the sync data example, we can see that spawning too many processes will yield in a degraded system. We have saturated our resources and the system spends more time waiting for I/O or trying to make the processes communicate to each other. You may then use use processes, threads or even distributed computing, which are different implementation methods to fit the context and your resources.

Conclusion: As a final thought, I’d like to make emphasis not in the computing power, but in the power of open science and solidarity as a community. Computers can definitely help us achieve our goals, but the most efficient parallel / distributed model resides in the human factor. Today we are living in unjust a world ruled by a very few yet very powerful people and corporations. Concentration of power and computational resources will only benefit a few, creating more inequality and social gradient. Humanity is reaching a new low and we can not normalize the killing of thousands of innocent children that is happening in front of our very eyes. We can not permit our governments prioritizing the macabre business of war instead of the human rights flag. The scientific community must rise up and organize for peace, social justice and equity in our society.

Open science, cooperation, solidarity and empathy are they key to success to any problem, no matter how big they may be.

Happy hacking

Happy birthday, GNU Health!

12 Wednesday Oct 2022

Posted by Luis Falcon in gnu, GNU Health

≈ 2 Comments

Tags

free software, gnu, GNU Health, GNU solidario, GNUHealth

On a day like this, October 12th, 2008, I registered the “Medical” project at SourceForge. Fourteen years later, GNU Health has become the Libre digital health ecosystem used by governments, hospitals, laboratories, research institutions and health professionals around the globe.

I want to sincerely thank all the professionals who believed in the project since early on… from small clinics in the African rain forest, to many public primary care institutions in Argentina, to the largest hospital in India and Asia (AIIMS).

GNU Health, the Libre digital health ecosystem

Institutions such as the University of Entre Rios in Argentina, Leibniz University Hanover, the United Nations Institute for Global Health, the World Health organization and the European Bioinformatics Institute (EBI), Digital Public Goods Alliance, have helped the GNU Health project, by providing training, implementations or valuable resources in areas related to coding standards and medical genetics.

Many thanks to our sponsors, particularly Thymbra and openSUSE who have been supporting GNU Health since day one, sponsoring our annual congress (GNUHealthCon). In addition, openSUSE has donated raspberry pi devices for development and for implementation projects, as well as packaging GNU Health for their distribution. Thank you Fosshost, for all this years of hosting the GNU Health HMIS and the BigBlueButton for our conferences!

Thank you European Open Source Observatory Repository (OSOR) / Joinup and the Free Software Foundation Europe for your work in making GNU Health a reality in Europe, specially in the Public Health sector.

Immense gratitude to the GNU operating system, particularly, to Richard Stallman -father of the Free Software movement- who in 2011 declared GNU Health an official GNU project. Since that day, all the components of the GH ecosystem are hosted in Savannah.

GNU Package
GNU Health is an official GNU Package

The GNU Health ecosystem would not exist today without the Libre Software community. Excellent Libre projects like Tryton, LibreOffice, PostgreSQL, Flask, Python, GNUPG, Apache, and many others make GNU Health a reality. We’re so happy to count with our sister community Orthanc, a great Libre Medical Imaging project that makes the perfect GNU Health partner in hospital settings and diagnostic imaging.

Last but not least: Thank you to the core team and to the community around the world: Developers, testers, translators, artists, documentation team, podcasters and journalists … I can not name you all… but the success of GNU Health belongs to you.

On a day like this, 14 years ago, the revolution for freedom and equity in healthcare began. And this is just starting…. at GNU Solidario, we’ll keep on advancing Social Medicine, and fighting so health remains a non-negotiable human right, no matter where you live. After all, GNU Health is a Social project with a little bit of technology behind.

Happy and Healthy hacking!

Luis Falcón

(Original document: https://my.gnusolidario.org/2022/10/12/happy-birthday-gnu-health/)

IFMSA Bangladesh joins the GNU Health Alliance

07 Monday Jun 2021

Posted by Luis Falcon in GNU Health, GNU solidario, Libre Software, MyGNUHealth, Public Health

≈ Comments Off on IFMSA Bangladesh joins the GNU Health Alliance

Tags

free software, GNU solidario, Public Health

The non-profit organization with 3500+ medical students and 65 universities across the country is now part of the GNU Health Alliance of Academic and Research Institutions
The non-profit organization with 3500+ medical students and 65 universities across the country is now part of the GNU Health Alliance of Academic and Research Institutions

It’s a great day for Bangladesh. It’s a great day for public health! Today, GNU Solidario and the International Federation of Medical Students Association, IFMSA Bangladesh, have signed an initial 5-year partnership on the grounds of the GNU Health Alliance of Academic and Research Institutions.

IFMSA Bangladesh is a non-for-profit, non-political organization that comprises 3500+ medical students from over 65 schools of Medicine across Bangladesh. They are a solid organization, very well organized, with different standing committees and support divisions.

IFMSA vision and mission fits very well with those of GNU Solidario advancement of Social Medicine. IFMSA has projects on Public Health (reproductive health; personal hygiene; cardiovascular disease and cancer prevention, … ), Human rights and peace (campaigns to end violence against women; protection of the underprivileged elders and children.. ). I am positive the GNU Health ecosystem will help them reach their goals in each of their projects!

The GNU Health Alliance of Academic and Research Institutions is extremely happy to have IFMSA Bangladesh as a member. IFMSA Bangladesh joins now a group of outstanding researchers and institutions that have made phenomenal advancements in health informatics and contributions to public health. Some examples:

  • The National University of Entre Ríos (UNER) has been awarded the project to use GNU Health as a real-time observatory for the COVID-19 pandemic, by the Government of Argentina. In the context of the GNU Health Alliance, UNER has also developed the oral health package for GNU Health; and implemented the GNU Health Hospital Management Information System component in many public health care institutions in the country. The team from the UNER has traveled to Cameroon to implement GNU Health HMIS in several health facilities in the country, as well as training their health professionals.
  • Thymbra Healthcare (R&D Labs) has contributed the medical genetics and precision medicine. Currently, Thymbra is focused on MyGNUHealth, the GNU Health Personal Health Record (PHR) for KDE plasma mobile and desktops devices, and working on the integration of MyGNUHealth with the PinePhone.
  • Khadas has signed an agreement to work on with the GNU Health community in Artificial Intelligence and medical imaging, as well on integrating Single Board Computers (SBCs) with GNU Health (the GNU Health in a Box project)

The fact that an association of 3500+ medical students embrace GNU Health means that all these bright future doctors from Bangladesh will also bear the ethics and philosophy of Libre Software to their communities. Public Health can not be run by private corporations, nor by proprietary software.

IFMSA has 5 years ahead to make a wonderful revolution in the public health care system. Health institutions will be able to implement state-of-the-art health informatics. Medical students can learn GNU Health inside-out, and conduct workshops across the country in the Libre digital health ecosystem. Most importantly, I am positive GNU Health will provide a wonderful opportunity to improve the health promotion and disease prevention campaigns in Bangladesh.

As the president of GNU Solidario, I am truly honored and looking forward to start collaborating with our colleagues from Bangladesh, and, when the pandemic is over, be able to meet them in person.

My most sincere appreciation to IFMSA Bangladesh for becoming part of the GNU Health community. To the 3500+ members, a very warm welcome!

Let’s keep building communities that foster universal health care, freedom and social medicine around the world.

For further information about the GNU Health Alliance of Academic and Research Institutions, please contact us at:

GNU Health Alliance: alliance@gnuhealth.org

Press: press@gnuhealth.org

General Information : info@gnuhealth.org

IWEEE 2015 venues

02 Wednesday Sep 2015

Posted by Luis Falcon in events, GNU Health, GNU solidario

≈ Leave a comment

Tags

#LasPalmas, #socialmedicine, free software, fsf, gnu, GNU Health, iweee2015, medicoslaspalmas, Public Health, richard stallman, Salud Pública

We’re happy to announce that IWEEE 2015 will be held at the EXE Hotel Las Canteras on the 25th of September and at Colegio de Médicos Las Palmas on the 26th of September.

El IWEEE 2015 tendrá lugar en el EXE Hotel Las Canteras, el día 25 de septiembre y en el Colegio de Médicos de Las Palmas el día 26 de septiembre.

On September 25th we will meet at the KRAUS Lounge at the EXE Hotel Las Canteras (see map). You can also make a reservation for your room at a special rate if you mention IWEEE 2015. Please contact Marieta Gonzalez: comercial@exelascanteras.com

El día 25 de Septiembre nos reuniremos en el Salón KRAUS  del Hotel Las Canteras EXE (ver mapa). También puede reservar su habitación a un precio especial si menciona IWEEE 2015. Por favor, póngase en contacto con Marieta González: comercial@exelascanteras.com

 
On September 26th Mr. Richard Stallman will present “Free Software and Medicine” at Colegio Médicos Las Palmas (see map).

El día 26 de septiembre el Sr. Richard Stallman hablará sobre el  “Software Libre y Medicina“ en el Colegio Médicos de Las Palmas (ver mapa).

Don’t forget to register and we hope to see you in Las Palmas !

No olvide registrarse. Los esperamos en Las Palmas !

Image

IWEEE 2015 Speakers

14 Friday Aug 2015

Tags

free software, fsf, gnu, GNU Health, GNU solidario, Hospital Information System, interoperability, IWEEE, Las Palmas, medical informatics, Public Health, richard stallman, Social Medicine, tryton

http://www.iweee.org/2015-las_palmas/speakers.html

Posted by Luis Falcon | Filed under events, GNU Health, GNU solidario

≈ Leave a comment

Call for Papers IWEEE 2015 : Social Medicine – People before Patients –

06 Monday Jul 2015

Posted by Luis Falcon in events, GNU Health, GNU solidario

≈ Leave a comment

Tags

#socialmedicine, free software, GNU Health, GNU Health, GNU solidario, healthcare, IWEEE, iweee2015, patients, Public Health, Salud Pública

The International Workshop on e-Health in Emerging Economies (IWEEE) is an annual conference for Free (Freedom) Software in Healthcare and Social Medicine advocates.

The workshop promotes Free Software as an effective and ethical solution to provide universality and equity in health care.

This year the theme of IWEEE is “People before Patients”. We will put the attention on health promotion and disease prevention. 

Share your government experiences and ideas, such as how your government is improving Public Health with Free Software, or personal health devices using open hardware.
IWEEE is a non-profit event organized by GNU SOLIDARIO.
If you are interested to participate, please submit your presentation at: papers@iweee.org

If you want to sponsor the event, please contact us via: sponsors@iweee.org

Please feel free to share this information with others people who may be interested.

*Deadline*

 If you wish to participate to the call for papers/posters :

*Abstract* *submission*: no later than 1st of August 2015

Paper and posters submission guidelines
We hope to see you in Las Palmas !

Image

GNU Health conference at MIT by Luis Falcon

02 Thursday Jul 2015

Tags

#socialmedicine, ehealth, electronic health records system (EHR), free software, GNU Health, HMIS, Social Justice, Social Medicine

https://www.youtube.com/watch?v=dXZjMjeN3PQ&feature=youtu.be

Posted by Luis Falcon | Filed under events, GNU Health, GNU solidario, Public Health

≈ Leave a comment

GNU Health at Nelson Mandela Children Hospital

02 Thursday Jul 2015

Posted by Luis Falcon in events, GNU Health, GNU solidario, Public Health

≈ Leave a comment

Tags

#socialmedicine, ehealth, free software, gnu, GNU Health, GNU Health, health system, HMIS, Nelson Mandela Children Hospital Trust, pediatrics, Public Health

Wonderful week at #NelsonMandela Children’s Hospital Trust about #GNUHealth & #SocialMedicine http://health.gnu.org 
 

Shuttleworth Foundation grant

30 Saturday May 2015

Posted by Luis Falcon in events, GNU Health

≈ 1 Comment

Tags

Arduino, ehealth, Free Hardware, free software, GNU Health, Shuttleworth

Dear Free Software community:

I got great news … I won a Shuttleworth Foundation grant !

 
I was notified at the airport on my way back from the Medical Informatics Europe 2015 (MIE 2015). This was at 5:00 in the morning, so a great way to start the day 🙂
During the flight from Madrid to Las Palmas, I thought on where would be the best project to put the grant resources. After some thought, I came to the decision of using them on the research and integration of  Free Hardware in GNU Health .
Initially, I will work on integrating Arduino with e-Health sensors into GNU Health. The functionality should allow recording real-time clinical information, such as Oxygen saturation (pulse oximetry) and heart frequency. I will also work on the ECG sensor.
I want to express my gratitude to the Shuttleworth foundation and their Fellows who have chosen me. In a world full of greed and lobbyists, it’s great to see that there are people and organizations that do care for social projects ! It is a immense honor for me to receive the grant, and I make it extensive for the GNU Health and Free Software community.
I will keep you posted, and let keep fighting for Freedom and Equity in Healthcare !
 

GNU Health at LIBREPLANET 2015

18 Wednesday Mar 2015

Posted by Luis Falcon in events, GNU Health, GNU solidario

≈ Leave a comment

Tags

ehealth, free software, gnu, GNU Health, GNU Health, GNU solidario, libreplanet2015, Public Health, software libre

Dr. Luis Falcón at LIBREPLANET 2015 will be presenting on March 22nd. 15:25 – 16:10 Session Block 5B:

“GNU Health: improving public health care with free software”

… LibrePlanet is an annual conference for free software enthusiasts. LibrePlanet brings together software developers, policy experts, activists and computer users to learn skills, share accomplishments and face challenges to software freedom … This year, the theme of LibrePlanet is “Free Software Everywhere.” 
[ LibrePlanet 2015 — Free Software Everywhere]                                            
← Older posts

Recent Posts

  • Gracias, India
  • Parallel and distributed computing in GNU Health
  • El cambio de horario es un atentado contra la salud. Rechazarlo es la mejor medicina
  • Tu finca, su infierno
  • La Cátedra de Animales y Sociedad de la URJC: Un referente de empatía y respeto hacia los animales.

Archives

  • September 2025
  • May 2025
  • March 2025
  • February 2025
  • May 2024
  • July 2023
  • March 2023
  • February 2023
  • January 2023
  • October 2022
  • August 2022
  • April 2022
  • February 2022
  • September 2021
  • August 2021
  • July 2021
  • June 2021
  • March 2021
  • December 2020
  • September 2020
  • July 2020
  • May 2020
  • March 2020
  • February 2020
  • November 2019
  • October 2019
  • June 2019
  • April 2019
  • May 2018
  • November 2017
  • October 2017
  • June 2017
  • May 2017
  • April 2017
  • March 2017
  • February 2017
  • January 2017
  • December 2016
  • November 2016
  • October 2016
  • September 2016
  • August 2016
  • July 2016
  • June 2016
  • May 2016
  • April 2016
  • March 2016
  • February 2016
  • January 2016
  • November 2015
  • October 2015
  • September 2015
  • August 2015
  • July 2015
  • May 2015
  • March 2015
  • February 2015
  • January 2015
  • December 2014
  • October 2014
  • September 2014
  • July 2014
  • June 2014
  • May 2014
  • April 2014
  • March 2014
  • December 2013
  • November 2013
  • October 2013
  • September 2013
  • August 2013
  • July 2013
  • June 2013
  • May 2013
  • April 2013
  • March 2013
  • February 2013
  • January 2013
  • December 2012
  • November 2012
  • October 2012
  • September 2012
  • August 2012
  • July 2012
  • June 2012
  • May 2012
  • April 2012
  • March 2012
  • February 2012
  • January 2012
  • December 2011
  • November 2011
  • October 2011
  • September 2011
  • August 2011
  • July 2011
  • June 2011
  • May 2011
  • April 2011
  • March 2011
  • February 2011
  • January 2011
  • December 2010
  • November 2010
  • October 2010
  • September 2010
  • August 2010
  • July 2010
  • June 2010
  • May 2010
  • April 2010
  • March 2010
  • February 2010
  • January 2010
  • December 2009
  • November 2009
  • October 2009
  • September 2009
  • August 2009
  • July 2009
  • June 2009
  • May 2009
  • February 2009
  • November 2008
  • October 2008
  • September 2008
  • December 2007
  • October 2006

Categories

  • #FHIR
  • animal liberation
  • animal rights
  • embedded
  • events
  • gnu
  • GNU Health
  • GNU solidario
  • HMIS
  • KDE
  • Libre Software
  • LIMS
  • medical
  • MyGNUHealth
  • Public Health
  • thalamus
  • tryton
  • Uncategorized

Meta

  • Create account
  • Log in
  • Entries feed
  • Comments feed
  • WordPress.com

Blog at WordPress.com.

  • Subscribe Subscribed
    • MeanMicio
    • Already have a WordPress.com account? Log in now.
    • MeanMicio
    • Subscribe Subscribed
    • Sign up
    • Log in
    • Report this content
    • View site in Reader
    • Manage subscriptions
    • Collapse this bar
 

Loading Comments...
 

You must be logged in to post a comment.