Mon. Jan 23rd, 2023

Hardware and software developments

The changing power of hardware (mobile)

Historically, development has focused on fixed, non-portable devices for the the majority of heavy performance tasks. In recent years, this focus has shifted away from desktop towards mobile devices.

The term mobile devices can cover a range of hardware – for the purposes of this, we mean primarily handheld devices, such as phones, and tablets, although laptop computers are also partly relevant in this context.

Phones have transitioned from devices which were single purpose (communication via phone or text) into devices which can be used for anything. There are even attachments available for mobile phones which enable them to be used as portable bank-card readers, ultrasound scanners and more.

This has been made possible because of the advances in silicon: CPUs that are far more powerful and run standardised instruction sets; silicon that focuses on specific tasks (referred to as hardware acceleration, which enables features that are prohibited otherwise due to the complexity or processing requirements of the software); the advent of machine learning hardware; miniaturisation of CPU manufacturing (reduction in transistor size leading to higher transistor density and lower power requirements).

The increased complexity of software

Improved, more powerful hardware naturally leads to the creation of more sophisticated software. For instance, only a few years ago, copy and paste was considered a new feature in mobile operating systems. Fast forward a few years, and now the operating system will search the internet for additional information about selected words; it will parse text to identify possible calendar appointments, contact details, addresses and so on; virtual assistants are now part of all major operating systems – this allow the user to interact in many new ways with their equipment: for example by learning the user’s routines or responding to vocal commands.

This goes hand-in-hand with the advancing hardware capabilities. For example, speech recognition used to be performed in the cloud: the device would submit a recording of the speech, and await a response. Now, dedicated machine learning hardware built in to mobile CPUs allows for this sort of processing to take place on the user’s phone without having to submit the data. Not only does this speed up the translation from speech to action, but it allows the device to work in locations without internet access.

Hardware upgrades to take advantage of new software/power efficiency

As already mentioned above, dedicated machine learning hardware has made its way into mobile devices, allowing entire new classes of application to run on mobile devices. What once required a super-computer and to be networked, now works on a handheld standalone device.

Click here to read a research paper about the rise of mobile CPUs

Cloud and hybrid technologies

Cloud technology is well understood in terms of the practical benefits: increased storage, backups that are offsite, access to documents from any device, real-time document sharing and collaboration being just a few of the advantages.

A ‘cloud’ is simply the use of computer infrastructure in some location. For this reason, a cloud is either a public cloud (Azure, iCloud etc) or a private cloud – which could be on-site infrastructure. Imagine a bank: they probably use a private cloud to store and process transactions. Not only would it be difficult to abide by all data protection and security practises using a public cloud, but confidence in the system from consumers may be lacking if there was perceived to be a security issue.

A hybrid cloud is one where some of the infrastructure is based on a private cloud, and some on a public cloud. Perhaps the APIs for a banking app would be hosted on a public cloud, ensuring maximum public availability and capacity; the data that backs up the mobile app could be stored on a private cloud, making it easier to ensure security and integrity of data.

Public Cloud vs Private Cloud vs Hybrid Cloud | Microsoft Azure