GEO Visual GPU Analytics notes

Update June 2019:  idea on sequencing and replay  mentioned here: https://blog.sumbera.com/2019/06/28/motion-sequence-and-replay-in-dynamic-maps/

****

With some delay, but before the year ends, I have to wrap up my presentation from GIS Hackathon March/2017 in Brno called Geo Visual GPU Analytics . It is available here in CZ : https://www.slideshare.net/sumbera/geo-vizualni-gpu-analytika  .  There are more pictures than text, so here I will try to add some comments to the slides.

slide 3,4: credits to my source of inspiration -Victor Bret, Oblivion GFX, Nick Qi Zhu.

slide 5: this is a snippet from my “journey log” (working diary), I keep every working day a short memo what I did, or anything significant that happen. It serves to several purposes, for example in this case I have gave up on trying WebGL , spent one /two days on other subject and then returned to the problem – and viola, I could resolve the problem.  Everyday counts, it helps to keep discipline and learn from past entries. Getting to know WebGL opened really ‘New Horizons” of GPU computing universe.

slide 7: “better bird in the hand than a pigeon on the roof  ” (English equivalent is : A bird in the hand is worth two in the bush’ ). This proverb is put into the context of edge vs cloud computing on slide 9.  In the hands – this is the edge , in the roof – this is the cloud.  So I believe that what users can hold in their hand, or wear or experience ‘nearby’ ‘is better’ (or more exciting)  than what exist somewhere far away (despite its better parameters).

slide 8 : We have same term for tool and instrument in the Czech – ‘nastroj’  so the question is musical instrument or just instrument (aka tool)? This goes to the whole topic of latency in user interaction, described for instance here. I tend to compare the right approach with musical instrument where tight feedback loop happens between the player and the musical instrument. The instrument must respond in less then 10 ms to tighten the feedback loop so the player can feel this instrument as his own ‘body’ and forget on ‘mechanics’ rather flow on the expressiveness of the feelings for what he is interpreting or improvising.  (right picture credit here) Why not to have such tools in visual analytics ? Why we need to wait for response from the server if the same task can be done quite  well on the edge ? mGL library for GPU powered visualization on web  or ImpactIN for iOS using Apple Pencil  reflects this principle. We have real-time rendering, we need human-sense-time interaction and bloated abstraction of current software stack do not help here despite of the advance in the hardware –  nice write up about latency problem here   …and as a side note there are computers types with very low latency – check any synthesizer or digital instrument where latency from user interaction must be very low, hence the left picture  on that slide represents them (combination of MIDI pad + Guitar).

Here is a short video form the Korg Monologue synth  on something used from 70’s , I consider this type of low-latency feedback-loop applied to new domains fascinating subject to explore. Notice real-time filter modification.

slide 9,10: nice chart from 2012 from britesnow.com    on cyclic nature of server vs client processing.  I stated there that Innovation happens on client (on edge) as servers(clouds, frames)  can do always anything and everything. Exaggerated and related to the slide 7 described above.  Workstations, PC, Smartphones (1st iPhone), AR/VR devices, wearables in general etc… it is always about efficiency in used space. Interestingly NVIDIA GPU Gems states similar on chip level.

slide 11: GPU chart over-performing CPU in conjunction with video resolution.

slide 12: Most tricky slide called ironically “Find 10 differences”. On left side is the program I did in 1993, in DOS, on right  the one I did using WebGL in 2016. Both examples are great achievements, the right side does GPU-based filtering (or marketingly in-memory)  with low user latency so it redraws immediately as user filters by his mouse pointing on brush selector.  The left was created in DOS era where each graphics card has its own way of mode switching  and that app could utilize maximum of the graphic card using 640×480 resolution with 256 colors ! that was something that time. However something is wrong in trying to find 10 differences as they are basically so similar, both using monitor, keyboard/mouse, and layout….

slide 13:  last slide titled “Find 1 difference”is the answer on the dilemma from slide 12  – the AR experience, new way of interaction, new type of the device for new workflows, visual analytic, exploration etc.  For one example of many possibilities of AR, here is a nice video from HxGN live 2017:

 

HxGN13: SG&I Perspectives LIVE

Here is a project I have been working on iKatastr2 (SpatialReader) with myVR technology showing terrain model with overlays of OGC WMS services. All from freely available data. Presented at HxGN live 2013

at 39:10 watch myVR multiplatform rendering technology integrated in the mobile app for 3D map visualisation.

Here are also few pictures form HxGN live booth/keynote

ESA App challenge winner

  I have participated in the first ESA (European Space Agency)  app dev challenge where 5 teams competed on best  concept/prototype that will bring GMES data sources to the public on mobile devices. Our team (Czech Republic, Germany, Macedonia) won and each member got iPad 3 . We won not because we were best in terms of  the best prototype,  concept or presentation, but because we fit best to the criteria imposed by this challenge and each piece of delivery (5 page long document describing concept, presentation, prototype demo)  was pretty good and simple enough to be feasible for final realization. Moreover a unique value of mobile devices plus unique value of  GMES satellites have been addressed.  Full article can be read here :   http://www.esa.int/esaEO/SEMIQOBXH3H_index_0.html

Update 08/08/2012 : there is also press release from my company  Intergraph : http://www.intergraph.com/assets/pressreleases/2012/08-01-2012.aspx

 

Intergraph 2010 session

ingr10_logo_localization2 Here is a video  from the prototype I did for the Intergraph 2010 keynote on “Geospatial Workflow Designer”  as part of the SOA/Composite services.

 

Another video showed prototype of hosting  GeoMedia Web Map on Amazon EC2 and Azure:

It was part of the large presentation  there #3119

3119: The Private Cloud: Integrating and Hosting Intergraph Services Using Microsoft Technologies
Abstract:
Service oriented architecture (SOA) has established a solid position within enterprise systems as the predominant way of integration and means of distributed computing. As part of the ongoing Intergraph SOA vision and roadmap, we are moving our research focus from foundation services to composite services and orchestration. The speaker of this session will discuss various aspects of orchestration using Workflow Foundation as well as options for hosting higher order services using Microsoft AppFabric and virtualization technologies – all elements of emerging private cloud architectures.
Date & Time: Wednesday, 9/1/2010 8:00 AM
Length: 45 minutes
Division: Security, Government & Infrastructure (SG&I)
Audience Type: User – General
Track / Sub-Track: Utilities & Communications;Defense & Intelligence;Public Safety & Security;Government & Transportation / SG&I General
Speaker(s): Stanislav Sumbera

 

Appliantization at NUC 2008

 I have heard first time the term “Appliantization” from Justin Lindsey a CTO of Netezza at Netezza User Conference 2008, September, Orlando. I must admit I love this term, especially since I was involved with virtual appliance concept for geospatial. At Intergraph I was evaluating Netezza Performance Server with gaining fascinating results –  truly the peroformance runs in ranges you read in Netezza marketing materials – that is 10-100 times faster than equivalent general purpose database.  Gartner put Netezza into leaders sections in their magic quadrant for 2008, Netezza has quite good support for spatial types and spatial operations in their database and with UDXes you can turn the machine into domain focused Data Warehouse Appliance. 

More about Netezza Spatial  : http://www.netezza.com/data-warehouse-appliance-products/spatial-analytics.aspx

But let’s start from the beginning…

“One size fits all” approach doesn’t fit for high performance.

  Computing Appliances are equipment with a specialized laser focus on solving targetted IT problems. In contrast to general purpose hardware and software solutions, computing appliances leverage a high level of coherence or fidelity between wired hardware and software pieces. Appliances hide the technical complexity of a system and expose the simplicity of the system. According to the Gartner definition an appliance is “a prepackaged or preconfigured balanced set of hardware, software, service and support, sold as a unit with built-in redundancy for high availability.”

Recently in the data warehouse market, new appliances have emerged with support for geospatial data, processing and present revolution (and disruptive) technology. These new appliances provide a performance boost by tackling the way large amounts of geospatial data can be effectively processed. These performance boosts are reaching orders of magnitude in comparison to general purpose database counterparts like Oracle.

 Geospatially empowered Data Warehouse Appliances (DWA) with Massively Parallel Processing (MPP) architecture can scale out into the hundreds of terabytes, have capabilities to perform spatial queries in seconds instead of minutes or hours, and provide to the user new levels of experience with the affordable instant geospatial analytics.

 With a huge volume of geospatially related data, there are many technical reasons to tune and assemble hardware with software and encapsulate all the complexity together into a self-contained ‘simple’ appliance with standard endpoints for interfacing. These self-contained appliances are easier to maintain and manage keeping the total cost of ownership lower than their general purpose counterparts.
2008 will be known as the year of “Appliantization.” In the data warehousing domain, appliances such as Netezza NPS, Oracle Exadata or Microsoft’s code-named project “Madison” (confluence of DataAllegro and SQL Server) are enabling technologies for high performance spatial analysis.

 Simplicity is managed complexity and computing appliances just do this

At Burton Catalyst Europe 2008 in Prague

Improving Development Process
SDLC : If you don’t build the right software, it doesn’t matter whether you build it right.
In fact…
• 35% of requirements change
• 45% of features are never used
• 82% of projects cite incomplete requirements as their #1 issue
Development Intelligence is BI applied to development – understanding the state of a development project at any point in time.
…. from the first day, Monday 20th October,2008

Future of a virtual desktops:
Steve Herrod (CTO VMWare)
http://blogs.vmware.com/sherrod/

– blend centralized and decentralized (mainframe)…(personal computers)
– Virtrual Desktop – vCloud vClient initiative
– Vision – full desktop run in the data center connect to desktop from anywhere
– Desktop term will have no meaning in few years…
– Desktop that follows user
– Evolution from Hosted to Hybrid !
– Master VM can update linked desktops/clones (as like update with windows)..new desktop image is available – it will handle user differences.
– I have asked question about graphical cards, openGL, Direct X supported in Virtual Desktops– Steve has mentioned what they have done on Apple. They can talk to those layers and still keeping VM image, they are not there yet.. may be in year or half.

The next gen application,Thomas Anne
– Macro business trends: “do less with less”
– app dev is viewed as unresponsive
Shifting the load:
– offshoring
– COTS, SaaS, “Cloud”
– “Same mess for less” (if we do not improve processes)
– Complexity kills, destroys ability to be agile (reason for app. to be unresponsiveness)

4 big trends:
SOA (Loosely-coupled shared services, SaaS, Servicing infrastructure and data)
UXP (RIA widgets, Fit Clients (not thin not thick just Fit)
WEB2.0,
Reducing Complexity/simpler more abstracts models and frameworks.

harsh reality:
– Redundant systems and portfolio bloat increase complexity and reduce agility
– Current model compounds the issues – traditional model is not SOA (model is focused on monolithical apps), they are tightly coupled distributed applications.

Requirements for a new model:
– Service-oriented rather than application-oriented
– “everything should be made as simple as possible not simpler”

Recommendations:
– The best innovation happens in the startup community
– Technology is irrelevant – what matters is how you use it. Focus on principles and patterns.
– Make clear SoC

Technology != Change

SOA presentation at Intergraph 2008

It’s been long time since my last post…I am completely busy and lot of changes have happened during the 2007 year. The most important is that I have handover my ‘start-up’ Intergraph division in Brno (called UtiCom Solution Center) and started to work as Technical Architect for SG&I division of Intergraph with Technology, Architecture and Strategy team. Moreover another important information drives me to update my blog – my presentation at Intergraph 2008. I will present in Las Vegas in June SG&I roadmap towards Service Oriented Architecture ! Looking forward to see you there.

update 2009 : you can download my presentation here :  http://www.intergraph2008.com/presentations under #9008, however you need a valid username and password. Also portions of the presentation can be found on CEN/TC 287 workshop https://blog.sumbera.com/2009/04/10/presentation-at-centc-287/

Software + Services: The convergence of SaaS, SOA and Web 2.0

my outlines of  Beat Swegler (Microsoft) presentation  “Software + Services: The convergence of SaaS, SOA and Web 2.0”,

 

 

Trends in IT

            SaaS – you have off premise software, you are outsourcing that

SOA – it is about service composition – you  assemble solution from different artifacts, how you build them, how you sell them

 

Web2.0 – multiple people able author and multiple to consume: internet applications that explicitly leverage network effects. Not necessary tight to Web Browsers but to applications

 

“Data is the next Intel Inside” – VE, Google Earth – every one can get images – the data what people put on top of the underlying data – this is the value.  It is not enough to think only about functionality.

“Software above the level of the single device”

 

 

Business Models:

Subscription/License based model: Models are based on the book “Place to Space” by Peter Weill

 

 

SaaS – is about service delivery

SOA – about service composition

Web 2.0 – economics + UX

 

all together S+S

 

 

S+S Lifecycle;

monetize (-license fees)->build (single tenant)->run -> consume (smart client)

 

Example : Outlook &Exchange

 

        Per user storage of data

        On/Offline capability

        Calendar/Folder

        Support different client types

 

 

Business Models

S+S Examples

S+S Platforms

 

 

Example: Eve Online

        leading Massive Multiplayer Online Game

        All users play in one single virtual world

        Graphics engine running on client

 

Monetize _>Build (highly scalable SQL server cluster) ->Consume (smart client leveraging GPU) ->Run

 

Command based –sending commands to objects in the game.(ships) to minimize network traffics

 

Photosynth – get value from data but also nice UX

 

        Cloud based service

        Consumed by rich application

 

HardRock sample (deepzoom technology) – memorabila.hardrock.com

British Library – five treasures

 

 

Platform for S+S:

 

1.     Live Service – targeting consumers, no IT involvements, Consumer oriented

2.     Online services – targeting businesses

 

Microsoft Service portfolio: (see above)

 

Oslo : will become our platform for building services that range from on premise to cloud space – you build stuff and later you decide how you gonna host the stuff. it is service delivery platform that come with some service creation aspects.

 

Exploring services:

Build Services:

1.     fundamental thing is scalability  – linear proportional between added resources and performance gained. I know how much performance I get if I get one box.

 

2.     Cost efficiency – because I can switch providers – competitors are on clouds as well

3.     Customizable – enterprise want to customize much more than SMB

4.     integration cap. – how do I integrate with my services

5.     Multi tenancy vs. Virtualization – do I want to create a fix instance for every tenant. or in a way that multiple tenants run in one instance.

 

ð more economical sense !

 

From Mega Hertz to Mega Watt – how many megawatts we use. ?

 

 

If you have well run data center – you are carbon neutral

Hosting choice

        On-premise

        Partner hosted

        Cloud based

 

Reducing carbon footprint:

        e.g. Quincy is carbon neutral

        consumer gets carbon unit credited

 

 

Consume – Criteria

SMB

            greatest potential for SaaS

        reduced IT management

        Relevance of the application – must for SMB

        Affordability

 

Enterprise

        reduce IT management

        Relevance of application

        Customizability and integration capabilities

        SLA

        TCO

 

 

Consumer Expectations:

Consumer:

        Free, ad funded or small fee

        can live with downtimes

SMB:

        affordable service delivery

Enterprise:

            – SLA with predictable maintenance . windows

 

 

 

SLA :

how can we become more reliable and HA than internet infrastructure.

 

        Internet availability challenges:

o    application avail vs. internet infras. avail

o   how to get more 9s than the electricity providers

        Requires an integrated and holistic operation-management story

 

 

 

Dealing with Service Outages:

        leverage cloud services as geo-backup

        duplicating cloud providers

 

 

Monetize

        license fee based model

        transaction fees (more in SaaS)

        Subscription fees

        Freemium (advertized sponsored)

 

Example : Amazon S3

S3 Simple Storage Service

        write, read, and delete objects (1 byte to 5 gigabytes each)

        objects are stored in buckets and retrieved via unique keys

        provided REST and SOAP based interfaces

o   Rest: (follows web pattern) Get, PUT ,Delete

o   SOAP (RPC way) : CreateBucket(),,,,

 

Amazon – enable scalability

 

The risk of cloud computing:

        problem with authentication overload and DoS  – 2 hours outage. (from 1 month it is within 10%)

 

Example BizTalk Services:

        Messaging

o    message routing and identif. in cloud

o   identity provides simple access control

 

        Identity

 

 

 

        Pub/Sub via URIs

        directional messaging via URIs

 

interesting for cloud interaction/integration services

 

Popfly (yahoo pipes?)  tool for mashing up:

what will happen if we have smooth transition between application -cloud

 

 

  

 

Closing :

        cloud based services will become more important

        some application are born to live in the cloud, others definitely not. – what drives you to put something in cloud – scale ? data ? you can gain ?

        future services platforms will provide a broad range of deployment choices. –

o   my dream would be: write application and define how you gonna host it (later in deployment decision)

 

Q&A:

        how you get the services into your operational and management story

        cloud services are for SMB most appropriate.