Please enable JavaScript.
Coggle requires JavaScript to display documents.
New Technologies (Multicore Architecture (Multicore CPUs allow true…
New Technologies
Multicore Architecture
Multicore CPUs allow true parallelism with one chip
Potentially beneficial areas
- complex transformations
- Big Data
- Complex analytical
Challenges
- Locking
- Non parallelizable
- Non-complex task do not run well
when distributed
- Memory bandwidth must keep
pace with increasing
number of CPU cores
Core Performance
- increases slowlier for individual cores
- run for more MHz has stopped
Speedup Amdahl's law
Assumption: performance increase does not grow linearly with increased number of cores
- Speedup = 1/(s+p/n)
- p = time spent on parallel parts
- s = time spent on non-parallel parts
- n = number of processors/cores
Counter Gustafson's law
Assumption: Problem size scales with the number of processors, the more powerful the processor the harder problems are solved on it
- non parallized fraction is decreasing with increasing n, therefore it is not as bad as Amdahl's law
If storage bottleneck vanishes, next bottleneck is most likely the processing power (CPU)
Parallel Processing
Transport
all data goes through bus from RAM to the CPU
- this is/was the bottleneck:
- from FSB to NUMA
Algorithms has to be programmed in parallel
- Problems?
- Costs and Performance linear?
Data & Task Parallelism
- task parallelism one task (thread) is executed by one processor
- data parallelism: same task is executed by all processors
(loops in computer programs)
Example for possible parallelism
- Joins
- Sorting
- Aggregation
GPU Computing
Characteristics
- high computational power
- parallelism-oriented graphics pipeline
- throughput over latency
- additional cache
- vertex and fragment operations
- VideoRam not NormalRam
Unified Shaders
- stream processors
- can process vertices, geometry and fragments
- better utilization
Computing Overview
- freely programmable, unified shaders allow to run almost arbitrary code on a GPU
- GPU can achieve tasks now like a CPU
- General purpose computation on a GPU (GPGPU)
- way faster in speedup in many use cases then CPU
Caveats (Vorsichtsmaßnahmen) for DWH
- Transfer from DRAM to VRAM is bottleneck
- VRAM is limited
- performance good for complex queries and large datasets
- bad for small datasets and easy queries
- queries must be parallelizable
- in practice requieres manual steps
Unify CPU and GPU?
- CPU and GPU not seperated in memory through VRAM and DRAM, instead use shared virtual memory
Expectations for future
- better tweaked GPU architecture
- more VRAM
- unified virtual memory with CPU
GPU for DBMS and DWH
- 3V of Big data (volume, velocity, variety)
- analytic queries tend to be complex
Massive intra-node parallelism thorugh GPUs
Pipeline Stream
Vertices > Vertex Processor > Rasterizer > Fragment Processor > Fragments > Frame Buffer
- all stages are processed in parallel
- compute units (shader) per stage, behavior like CPU core
Motivation
Storage, Transport and Processing affecting performance, software must exploit hardware
- secondary Storage as bottleneck in recent years
Vertical Scaling
- faster computing power = more power = MHz
Horizontal Scaling
- more computing power = more cores
- used nowadays for Big Data
Solid state drives (SSD)
HDD bottleneck
- small I/O operations sum up tp latencies in HDDs
through mechanical nature (10ms acces time)
Solid State Drives
- change thorugh electrical access (60ns access time)
- nevertheless flash ships wear out after time after reaccessing