SHOGUN is a machine learning tool that provides implementations of support vector machines, linear discriminant analysis, linear programming machines, perceptrons, hidden Markov models, and other algorithms. It has static and modular interfaces and is implemented in C++ as the libshogun library. It can be used from Python, Octave, and other languages and supports Linux, Windows, and Mac OS.
고급 자바 8 교육 (6일 중 6일차)
티맥스소프트 연구소에 연구소장으로 재직 중이던 2013년 10월에 진행한 자바 언어 강의 내용입니다.
JVM에 대한 이해와 Java 8에 대한 소개를 포함하려고 노력하였습니다.
아래 강의 동영상이 있습니다.
http://javadom.blogspot.com/2017/07/8-6.html
curl is a command line tool used to transfer data from or to a server using supported protocols like HTTP, HTTPS, FTP, and more. It offers features like proxy support, user authentication, file transfer resume, SSL connections, cookies, and can reuse connections for multiple file transfers from the same server to improve speed. curl is powered by libcurl for all transfer-related functionality. It allows specifying multiple URLs or URL patterns on the command line to fetch sequentially.
Deploy, Scale and Sleep at Night with JRubyJoe Kutner
1) The document discusses using JRuby to deploy and scale Ruby applications. JRuby runs Ruby code on the Java Virtual Machine (JVM), allowing for features like deployment automation, background jobs, and clustering.
2) It provides examples of using tools like Warbler, Trinidad, and TorqueBox to package and deploy JRuby applications to servers like Tomcat, as well as to PaaS providers. These tools automate deployment and add capabilities like background processing.
3) JRuby and tools like TorqueBox are said to allow applications to scale horizontally by deploying across multiple servers for high availability and load balancing, helping applications "Deploy, Scale and Sleep at Night."
This document provides an agenda and notes for an HBase training course. The agenda includes covering course credit, hands-on exercises for installing tm-puppet and writing CRUD codes, an overview of the Client API basics and advanced features, and references. The general notes section provides information on atomic mutations, thread safety with HTable instances, and configuration. The document then covers specifics of the Put, Get, Delete, batch operations, row locks, and scan methods of the Client API. It concludes with a hands-on exercise asking students to write CRUD code against an HBase table and describes requirements for completing and submitting the code.
This document discusses cluster monitoring metrics and tools. It provides an introduction to metrics and monitoring, describes the Hadoop/HBase metrics framework including common metric types and examples. It then covers specific metrics for the master, region servers, JVM, RPCs and more. Finally it discusses tools like Ganglia, Nagios and JMX for collecting and viewing metrics and provides instructions for a hands-on exercise with Ganglia.
When Ruby Meets Java - The Power of Torqueboxrockyjaiswal
This document discusses TorqueBox, an open source platform that allows Ruby on Rails applications to run on the Java Virtual Machine (JVM) and take advantage of Java libraries and services. It highlights features like scheduling, services, messaging, background jobs, clustering, caching and performance. The document includes code samples and discusses how TorqueBox makes these enterprise features easy to use from Ruby. It also notes some risks of using an emerging technology but says the documentation is good and help is available online.
This document discusses various HBase administration APIs and available clients. It describes the HTableDescriptor and HColumnDescriptor classes used to define tables and column families. The HBaseAdmin class provides methods to create, delete, and modify tables and column families. Available clients for interacting with HBase include the native Java API, REST, Thrift, Avro, MapReduce, Hive, Pig, the HBase shell, and a web-based UI. Batch processing clients like MapReduce, Hive and Pig integrate HBase with the Hadoop ecosystem.
This document summarizes the curl command line tool, which transfers data from or to a server using supported protocols like HTTP, HTTPS, FTP, etc. It describes curl's name, synopsis, description, URL syntax handling, progress meter, and common options for controlling aspects like authentication methods, cookies, file transfers, SSL/TLS versions, and more. The document provides high-level information on curl's capabilities and how to use its many features from the command line.
고급 자바 8 교육 (6일 중 6일차)
티맥스소프트 연구소에 연구소장으로 재직 중이던 2013년 10월에 진행한 자바 언어 강의 내용입니다.
JVM에 대한 이해와 Java 8에 대한 소개를 포함하려고 노력하였습니다.
아래 강의 동영상이 있습니다.
http://javadom.blogspot.com/2017/07/8-6.html
curl is a command line tool used to transfer data from or to a server using supported protocols like HTTP, HTTPS, FTP, and more. It offers features like proxy support, user authentication, file transfer resume, SSL connections, cookies, and can reuse connections for multiple file transfers from the same server to improve speed. curl is powered by libcurl for all transfer-related functionality. It allows specifying multiple URLs or URL patterns on the command line to fetch sequentially.
Deploy, Scale and Sleep at Night with JRubyJoe Kutner
1) The document discusses using JRuby to deploy and scale Ruby applications. JRuby runs Ruby code on the Java Virtual Machine (JVM), allowing for features like deployment automation, background jobs, and clustering.
2) It provides examples of using tools like Warbler, Trinidad, and TorqueBox to package and deploy JRuby applications to servers like Tomcat, as well as to PaaS providers. These tools automate deployment and add capabilities like background processing.
3) JRuby and tools like TorqueBox are said to allow applications to scale horizontally by deploying across multiple servers for high availability and load balancing, helping applications "Deploy, Scale and Sleep at Night."
This document provides an agenda and notes for an HBase training course. The agenda includes covering course credit, hands-on exercises for installing tm-puppet and writing CRUD codes, an overview of the Client API basics and advanced features, and references. The general notes section provides information on atomic mutations, thread safety with HTable instances, and configuration. The document then covers specifics of the Put, Get, Delete, batch operations, row locks, and scan methods of the Client API. It concludes with a hands-on exercise asking students to write CRUD code against an HBase table and describes requirements for completing and submitting the code.
This document discusses cluster monitoring metrics and tools. It provides an introduction to metrics and monitoring, describes the Hadoop/HBase metrics framework including common metric types and examples. It then covers specific metrics for the master, region servers, JVM, RPCs and more. Finally it discusses tools like Ganglia, Nagios and JMX for collecting and viewing metrics and provides instructions for a hands-on exercise with Ganglia.
When Ruby Meets Java - The Power of Torqueboxrockyjaiswal
This document discusses TorqueBox, an open source platform that allows Ruby on Rails applications to run on the Java Virtual Machine (JVM) and take advantage of Java libraries and services. It highlights features like scheduling, services, messaging, background jobs, clustering, caching and performance. The document includes code samples and discusses how TorqueBox makes these enterprise features easy to use from Ruby. It also notes some risks of using an emerging technology but says the documentation is good and help is available online.
This document discusses various HBase administration APIs and available clients. It describes the HTableDescriptor and HColumnDescriptor classes used to define tables and column families. The HBaseAdmin class provides methods to create, delete, and modify tables and column families. Available clients for interacting with HBase include the native Java API, REST, Thrift, Avro, MapReduce, Hive, Pig, the HBase shell, and a web-based UI. Batch processing clients like MapReduce, Hive and Pig integrate HBase with the Hadoop ecosystem.
This document summarizes the curl command line tool, which transfers data from or to a server using supported protocols like HTTP, HTTPS, FTP, etc. It describes curl's name, synopsis, description, URL syntax handling, progress meter, and common options for controlling aspects like authentication methods, cookies, file transfers, SSL/TLS versions, and more. The document provides high-level information on curl's capabilities and how to use its many features from the command line.
This document provides an introduction to OpenMP, a standard for parallel programming using shared memory. OpenMP uses compiler directives like #pragma omp parallel to create threads that can access shared data. It uses a fork-join model where the master thread creates worker threads to execute blocks of code in parallel. OpenMP supports work sharing constructs like parallel for loops and sections to distribute work among threads, and synchronization constructs like barriers to coordinate thread execution. Variables can be declared as private to each thread or shared among all threads.
TorqueBox allows Ruby applications to leverage the Java Application Server and Java EE services by running Ruby code on JRuby and integrating it with the underlying Java platform. It provides services like messaging, caching, background jobs, and more to Ruby applications. TorqueBox handles the integration between Ruby frameworks/APIs and the corresponding Java APIs and services, allowing Ruby developers to build enterprise applications that scale.
This document provides the help output from the ffmpeg command, listing its configuration options and summarizing its video, audio, and advanced encoding options. It also lists the versions of ffmpeg's libavutil, libavcodec, and libavformat libraries being used.
OpenStack Swift Command Line Reference Diablo v1.2Amar Kapadia
This document provides a quick reference guide for all CLI commands and tools for managing and interacting with the OpenStack Swift object storage system in the Diablo release. It summarizes commands for the Swift proxy, ring management, service initialization, health monitoring, and the account, container, and object services.
This document discusses using DataMapper with Infinispan as a clustered NoSQL data store. It covers:
- DataMapper is a Ruby ORM that can use Infinispan as its data adapter through the dm-infinispan-adapter gem.
- Infinispan is a highly scalable, distributed Java cache that provides a data grid. It supports replication, distribution and local caching.
- The dm-infinispan-adapter allows DataMapper objects to be stored in Infinispan, enabling a clustered NoSQL backend for Ruby applications. It generates runtime annotations to integrate with Hibernate Search.
The document discusses changes and new features in RubyGems 3 and 4, the package manager for the Ruby programming language. Some key points:
- RubyGems 3 removes deprecated methods and support for older Ruby versions. It adds warnings for deprecated methods and allows direct use of the release toolchain.
- RubyGems 4 will have incompatible changes like upgrading the dependency resolver, making conservative installation the default, changing the behavior of default installation, and making user installation the default.
- Other topics discussed include deprecation handling, code search tools for RubyGems code, testing changes on all Ruby versions, removing deprecated code, and pre-releasing RubyGems updates.
Complex Made Simple: Sleep Better with TorqueBoxbobmcwhirter
The document discusses using TorqueBox, a Ruby application server based on JRuby and JBoss AS7, to deploy a Rails application in production. It compares various deployment options from rolling your own infrastructure to using a platform as a service like Heroku. TorqueBox provides a middle ground where it handles services like caching, background jobs, scheduling, and clustering but still allows customization. The document walks through migrating an existing Rails app's Delayed::Job and caching implementations to use TorqueBox equivalents to simplify the deployment.
The document discusses tips for malloc and free in C, including making your own malloc library for troubleshooting. It covers system calls like brk/sbrk and mmap/munmap that are used to allocate memory in user space. It also provides tips for the glibc malloc implementation, such as functions like mallopt, malloc_stats, and malloc_usable_size. Finally, it discusses two methods for hooking and replacing malloc - using LD_PRELOAD and dlsym, or the __malloc_hook mechanism.
The document discusses TorqueBox, an application server for Ruby that is built on JBoss Application Server 7 and uses JRuby. It allows Ruby applications to take advantage of features typically found in Java application servers like clustering, caching, messaging, and more. Key features highlighted include support for Ruby web frameworks like Rails and Sinatra, background processing using Resque or DelayedJob, messaging using JMS, long running services, and resource injection. Web sockets support is provided using STOMP and the Stilts framework. The document outlines goals of TorqueBox and provides examples of configuration and usage.
ZK is a model-view-controller framework for building desktop-like web applications using ZUML, ZScript, and Java. It uses a servlet-based architecture where ZK Loader handles initial page loads and the AU Engine handles AJAX requests. The ZK library is included in the webapp and generates the necessary folder structure and files. Developers define the web application using ZUML and deploy it by copying the compiled files into Tomcat's webapps folder.
Ruby 2.4.0 includes several performance improvements including faster instance variable access and integer handling. It also protects Proc and Env objects from garbage collection issues by making them write-barrier protected. The presenter proposed changes to Env object handling that allow protection without significant performance impacts, such as lightweight escape detection and conditional write barriers. Benchmark results showed performance gains from these changes and protection of Proc objects.
This document summarizes the key points in migrating a legacy Rails 2.0 application to a newer version of Rails. It discusses upgrading to Rails 2.3 first to address compatibility issues. Then it recommends upgrading to Ruby 2.1 and Rails 4.1 to get performance improvements from the language and framework updates. Various techniques are presented for the migration process such as running the newer versions in production gradually.
Lecture 7: Introduction to Quantum Chemical Simulation graduate course taught at MIT in Fall 2014 by Heather Kulik. This course covers: wavefunction theory, density functional theory, force fields and molecular dynamics and sampling.
Terraform can be used to automate the deployment and management of infrastructure as code. It allows defining infrastructure components like VMs, networks, DNS records etc. as code in configuration files. Key benefits include versioning infrastructure changes, consistency across environments, and automation of deployments. The document then provides details on installing Terraform, using common commands like plan, apply and import, defining resources, variables, modules and managing remote state. It also demonstrates creating an EC2 instance using a generated AMI.
The secret of Release story discusses how Ruby is released and distributed to the world. It covers:
1. The Ruby core team which maintains and releases Ruby.
2. The release cycle and process which aims to release every Christmas with preview releases and backporting of fixes.
3. The *.ruby-lang.org domains which are controlled by Matz and host official Ruby resources like documentation, packages, and repositories.
4. Tools for installing Ruby from source like rbenv and ruby-build.
5. Experimental Ruby snap packages which package Ruby as self-contained binaries.
6. Plans to migrate the source code repository from Subversion to Git hosted on git.ruby-lang.org.
This document discusses how to craft a Rails culture within a company by enforcing modern architectures, open source practices, and integrating administrative functions. It provides examples of migrating from older Ruby and Rails versions, replacing legacy middleware, and designing internal or separate apps for administrative tasks. The document advocates an evolutionary approach of learning Rails step-by-step and establishing practices like GitHub workflow and ChatOps to support DevOps.
The document summarizes the key points about RubyGems 3 & 4 from Hiroshi SHIBATA's presentation at RubyKaigi 2018. It discusses RubyGems 2.7, including support for older Ruby versions. It then covers plans for RubyGems 3.0, such as removing deprecated code, and RubyGems 4.0, which may include non-backwards compatible changes.
The document discusses migrating from a legacy Ruby on Rails application to a newer version of Rails. It provides examples of performance improvements when upgrading Ruby from 1.8.6 to 2.1.1 and Rails from 2.0 to 4.1. It also discusses strategies for migrating codebases while maintaining zero downtime deployments.
A brief explanation on how the JVM loads and execute its code is done here. Register and stack based execution are explained, and different garbage collection algorithms are shown using graphs to make it easy to understand what happens under the hood. This talk uses the Java Virtual Machine as a main example, but most of the concepts extends to any modern virtual machine available today.
The document discusses various topics related to tuning the Java Virtual Machine (JVM) for performance, including:
1. Hotspot compiler options like method inlining that can improve performance.
2. Threading models on Solaris like M:N and 1:1 and how tuning thread-related JVM options can significantly impact throughput.
3. Memory and garbage collection tuning like selecting the right GC algorithm, tuning heap sizes, and analyzing GC logs to identify bottlenecks and optimize full GC frequency and duration.
This document provides an introduction to OpenMP, a standard for parallel programming using shared memory. OpenMP uses compiler directives like #pragma omp parallel to create threads that can access shared data. It uses a fork-join model where the master thread creates worker threads to execute blocks of code in parallel. OpenMP supports work sharing constructs like parallel for loops and sections to distribute work among threads, and synchronization constructs like barriers to coordinate thread execution. Variables can be declared as private to each thread or shared among all threads.
TorqueBox allows Ruby applications to leverage the Java Application Server and Java EE services by running Ruby code on JRuby and integrating it with the underlying Java platform. It provides services like messaging, caching, background jobs, and more to Ruby applications. TorqueBox handles the integration between Ruby frameworks/APIs and the corresponding Java APIs and services, allowing Ruby developers to build enterprise applications that scale.
This document provides the help output from the ffmpeg command, listing its configuration options and summarizing its video, audio, and advanced encoding options. It also lists the versions of ffmpeg's libavutil, libavcodec, and libavformat libraries being used.
OpenStack Swift Command Line Reference Diablo v1.2Amar Kapadia
This document provides a quick reference guide for all CLI commands and tools for managing and interacting with the OpenStack Swift object storage system in the Diablo release. It summarizes commands for the Swift proxy, ring management, service initialization, health monitoring, and the account, container, and object services.
This document discusses using DataMapper with Infinispan as a clustered NoSQL data store. It covers:
- DataMapper is a Ruby ORM that can use Infinispan as its data adapter through the dm-infinispan-adapter gem.
- Infinispan is a highly scalable, distributed Java cache that provides a data grid. It supports replication, distribution and local caching.
- The dm-infinispan-adapter allows DataMapper objects to be stored in Infinispan, enabling a clustered NoSQL backend for Ruby applications. It generates runtime annotations to integrate with Hibernate Search.
The document discusses changes and new features in RubyGems 3 and 4, the package manager for the Ruby programming language. Some key points:
- RubyGems 3 removes deprecated methods and support for older Ruby versions. It adds warnings for deprecated methods and allows direct use of the release toolchain.
- RubyGems 4 will have incompatible changes like upgrading the dependency resolver, making conservative installation the default, changing the behavior of default installation, and making user installation the default.
- Other topics discussed include deprecation handling, code search tools for RubyGems code, testing changes on all Ruby versions, removing deprecated code, and pre-releasing RubyGems updates.
Complex Made Simple: Sleep Better with TorqueBoxbobmcwhirter
The document discusses using TorqueBox, a Ruby application server based on JRuby and JBoss AS7, to deploy a Rails application in production. It compares various deployment options from rolling your own infrastructure to using a platform as a service like Heroku. TorqueBox provides a middle ground where it handles services like caching, background jobs, scheduling, and clustering but still allows customization. The document walks through migrating an existing Rails app's Delayed::Job and caching implementations to use TorqueBox equivalents to simplify the deployment.
The document discusses tips for malloc and free in C, including making your own malloc library for troubleshooting. It covers system calls like brk/sbrk and mmap/munmap that are used to allocate memory in user space. It also provides tips for the glibc malloc implementation, such as functions like mallopt, malloc_stats, and malloc_usable_size. Finally, it discusses two methods for hooking and replacing malloc - using LD_PRELOAD and dlsym, or the __malloc_hook mechanism.
The document discusses TorqueBox, an application server for Ruby that is built on JBoss Application Server 7 and uses JRuby. It allows Ruby applications to take advantage of features typically found in Java application servers like clustering, caching, messaging, and more. Key features highlighted include support for Ruby web frameworks like Rails and Sinatra, background processing using Resque or DelayedJob, messaging using JMS, long running services, and resource injection. Web sockets support is provided using STOMP and the Stilts framework. The document outlines goals of TorqueBox and provides examples of configuration and usage.
ZK is a model-view-controller framework for building desktop-like web applications using ZUML, ZScript, and Java. It uses a servlet-based architecture where ZK Loader handles initial page loads and the AU Engine handles AJAX requests. The ZK library is included in the webapp and generates the necessary folder structure and files. Developers define the web application using ZUML and deploy it by copying the compiled files into Tomcat's webapps folder.
Ruby 2.4.0 includes several performance improvements including faster instance variable access and integer handling. It also protects Proc and Env objects from garbage collection issues by making them write-barrier protected. The presenter proposed changes to Env object handling that allow protection without significant performance impacts, such as lightweight escape detection and conditional write barriers. Benchmark results showed performance gains from these changes and protection of Proc objects.
This document summarizes the key points in migrating a legacy Rails 2.0 application to a newer version of Rails. It discusses upgrading to Rails 2.3 first to address compatibility issues. Then it recommends upgrading to Ruby 2.1 and Rails 4.1 to get performance improvements from the language and framework updates. Various techniques are presented for the migration process such as running the newer versions in production gradually.
Lecture 7: Introduction to Quantum Chemical Simulation graduate course taught at MIT in Fall 2014 by Heather Kulik. This course covers: wavefunction theory, density functional theory, force fields and molecular dynamics and sampling.
Terraform can be used to automate the deployment and management of infrastructure as code. It allows defining infrastructure components like VMs, networks, DNS records etc. as code in configuration files. Key benefits include versioning infrastructure changes, consistency across environments, and automation of deployments. The document then provides details on installing Terraform, using common commands like plan, apply and import, defining resources, variables, modules and managing remote state. It also demonstrates creating an EC2 instance using a generated AMI.
The secret of Release story discusses how Ruby is released and distributed to the world. It covers:
1. The Ruby core team which maintains and releases Ruby.
2. The release cycle and process which aims to release every Christmas with preview releases and backporting of fixes.
3. The *.ruby-lang.org domains which are controlled by Matz and host official Ruby resources like documentation, packages, and repositories.
4. Tools for installing Ruby from source like rbenv and ruby-build.
5. Experimental Ruby snap packages which package Ruby as self-contained binaries.
6. Plans to migrate the source code repository from Subversion to Git hosted on git.ruby-lang.org.
This document discusses how to craft a Rails culture within a company by enforcing modern architectures, open source practices, and integrating administrative functions. It provides examples of migrating from older Ruby and Rails versions, replacing legacy middleware, and designing internal or separate apps for administrative tasks. The document advocates an evolutionary approach of learning Rails step-by-step and establishing practices like GitHub workflow and ChatOps to support DevOps.
The document summarizes the key points about RubyGems 3 & 4 from Hiroshi SHIBATA's presentation at RubyKaigi 2018. It discusses RubyGems 2.7, including support for older Ruby versions. It then covers plans for RubyGems 3.0, such as removing deprecated code, and RubyGems 4.0, which may include non-backwards compatible changes.
The document discusses migrating from a legacy Ruby on Rails application to a newer version of Rails. It provides examples of performance improvements when upgrading Ruby from 1.8.6 to 2.1.1 and Rails from 2.0 to 4.1. It also discusses strategies for migrating codebases while maintaining zero downtime deployments.
A brief explanation on how the JVM loads and execute its code is done here. Register and stack based execution are explained, and different garbage collection algorithms are shown using graphs to make it easy to understand what happens under the hood. This talk uses the Java Virtual Machine as a main example, but most of the concepts extends to any modern virtual machine available today.
The document discusses various topics related to tuning the Java Virtual Machine (JVM) for performance, including:
1. Hotspot compiler options like method inlining that can improve performance.
2. Threading models on Solaris like M:N and 1:1 and how tuning thread-related JVM options can significantly impact throughput.
3. Memory and garbage collection tuning like selecting the right GC algorithm, tuning heap sizes, and analyzing GC logs to identify bottlenecks and optimize full GC frequency and duration.
This document provides an overview of support vector machines (SVMs), including:
- SVMs find the maximum-margin hyperplane between two classes during training to create classifiers with good generalization.
- The kernel trick allows transforming data into a higher-dimensional space to find separable hyperplanes when data is not linearly separable in its original space.
- Soft-margin SVMs allow some misclassified examples to improve accuracy when data is not perfectly separable.
- Tutorial tasks demonstrate using LIBSVM to classify toy datasets and evaluate SVMs by varying parameters like kernel type, cost, and gamma values.
This document provides an overview of support vector machines (SVMs), including:
- SVMs find the maximum-margin hyperplane between two classes during training to create classifiers with good generalization.
- The kernel trick allows transforming data into a higher-dimensional space to find nonlinear decision boundaries.
- Soft-margin SVMs allow some misclassified examples to improve accuracy when data is not perfectly separable.
- Tutorial tasks demonstrate using LIBSVM to classify toy datasets and evaluate SVM performance by varying parameters.
The document discusses key concepts related to the Java Virtual Machine (JVM) including:
1. How Java code is compiled to bytecode and executed by the JVM on different operating systems.
2. The class loading process and class verification that occurs when a class is loaded or referenced.
3. Details of the class file format including constant pool, fields, methods and attributes.
4. The Java bytecode instructions and how they operate on the operand stack and method area.
5. Just-in-time compilation techniques used by the JVM like inline caching, loop optimizations, and escape analysis.
6. Garbage collection algorithms and how they aim to optimize pause time, throughput and
Новый InterSystems: open-source, митапы, хакатоныTimur Safin
Presentation for the 1st InterSystems Meetup in the Minsk:
- New and better InterSystems changes their practice.
- open-source repositories, meetups, and hackathon;
- CPM (package manager) as a good example of open-source project
Software Profiling: Understanding Java Performance and how to profile in JavaIsuru Perera
Guest lecture at University of Colombo School of Computing on 27th May 2017
Covers following topics:
Software Profiling
Measuring Performance
Java Garbage Collection
Sampling vs Instrumentation
Java Profilers. Java Flight Recorder
Java Just-in-Time (JIT) compilation
Flame Graphs
Linux Profiling
The document provides an introduction to LAVA workload scheduler. It discusses how LAVA allows users to share computing resources and time on a cluster. It describes installing and configuring LAVA, and how to use LAVA commands to submit, monitor, modify and control jobs on the cluster.
Ruby 2.5 includes new features such as allowing rescue/else/ensure blocks directly in do/end, yield_self, Hash slicing methods, and Struct classes that accept keyword arguments. It also provides performance improvements like removing trace instructions for 5-10% faster execution and optimizing block passing. Additionally, there are other notable changes like Thread exceptions defaulting to report, SecureRandom preferring OS sources, and updates to standard libraries, Unicode version, RubyGems, and RDoc.
Artimon is a scalable metrics collection and analysis framework. It collects metrics called 'variable instances' that have a name, labels, and timestamped values. Metrics can be exported via a Thrift service and stored in distributed systems like Kafka for later analysis using Groovy scripts. Artimon is designed to collect both IT and business metrics and can adapt to collect from third party sources using agents.
http://imatge-upc.github.io/telecombcn-2016-dlcv/
Deep learning technologies are at the core of the current revolution in artificial intelligence for multimedia data analysis. The convergence of big annotated data and affordable GPU hardware has allowed the training of neural networks for data analysis tasks which had been addressed until now with hand-crafted features. Architectures such as convolutional neural networks, recurrent neural networks and Q-nets for reinforcement learning have shaped a brand new scenario in signal processing. This course will cover the basic principles and applications of deep learning to computer vision problems, such as image classification, object detection or text captioning.
Meder Kydyraliev - Mining Mach Services within OS X SandboxDefconRussia
This document discusses OS X sandboxing and the OS X sandbox implementation called Seatbelt. It provides an overview of sandboxing concepts like why it is used and how it works through hooks in the kernel. It describes the TrustedBSD MAC framework that Seatbelt is based on and how it uses extensions. It also examines some of the attack surface exposed in the BSD system calls and Mach services that are allowed by the sandbox.
Grow and Shrink - Dynamically Extending the Ruby VM StackKeitaSugiyama1
This document summarizes a presentation about dynamically extending the Ruby VM stack. It discusses two methods for extending the stacks - stretching and chaining. Stretching grows the stacks upwards when they reach the maximum size, while chaining implements the call stack as a linked list so only the internal stack needs growing. The implementation aims to make stack extensions safe and efficient for development by prohibiting access to old stacks and frequently triggering extensions for testing. Benchmarks show chaining has lower execution time than stretching but is still slower than the default implementation due to overhead from moving stacks and indirect access. Initial stack size has little effect on performance. The goal is to reduce memory usage through dynamic stack sizing.
Adopting GraalVM - Scale by the Bay 2018Petr Zapletal
After many years of development, Oracle finally published GraalVM and sparkled a lot of interest in the community. GraalVM is a high-performance polyglot VM with a number of potentially interesting traits we can take advantage of like increased performance and lowered cost. It can also tackle shortcomings of JVM/Scala we are struggling for years like slow-startup times or large jars. Lastly, thanks to its polyglot nature it can open interesting doors we may want to discover. On the other hand, GraalVM may still be bleeding edge technology and having a hard time to deliver the promised features. In this talk, I’d like to discuss advantages and disadvantages of adopting GraalVM, provide you guidance if you decide to do so and also share our story in this area including various samples, and recommendations. This talk is focused on JVM and Scala but should be beneficial for everyone with interested in this topic.
GDB can be extended through Python scripts to provide additional functionality. The author is developing a Python script for GDB that interfaces with the Java Virtual Machine (JVM) debugging information stored in the VMStruct table. This will allow GDB to natively understand Java frames during stack unwinding. It reads the VMStruct entries, which describe JVM classes and fields, to map between JVM and native frames for mixed-mode backtraces. The goal is to provide transparent stack traces and object dumping for Java code running on the JVM from GDB on core files.
Java garbage collection has evolved significantly since its inception in 1959. The modern Hotspot JVM uses generational garbage collection with a young and old generation. It employs concurrent and parallel techniques like CMS to minimize pauses. OutOfMemoryErrors require increasing heap sizes or fixing leaks. Finalizers are generally avoided due to performance impacts. GC tuning must be tested under realistic loads rather than one-size-fits-all settings. Analysis tools help correlate GC logs with application behavior.
This document discusses adding a new pass to the BOLT binary optimizer. It begins with an overview of the BOLT pipeline and intermediate representation. It then provides an example of adding a simple peephole optimization rule. The document outlines various techniques for debugging and testing new passes, such as triaging crashes with a bisection script, printing analysis results, and dumping functions to files. It concludes with notes on implementing a new pass by inheriting from the BinaryFunctionPass class and integrating it into the pass manager to run on whole programs in parallel.
Quantifying Container Runtime Performance: OSCON 2017 Open Container DayPhil Estes
A talk given at Open Container Day at O'Reilly's OSCON convention in Austin, Texas on May 9th, 2017. This talk describes an open source project, bucketbench, which can be used to compare performance, stability, and throughput of various container engines. Bucketbench currently supports docker, containerd, and runc, but can be extended to support any container runtime. This work was done in response to performance investigations by the Apache OpenWhisk team in using containers as the execution vehicle for functions in their "Functions-as-a-Service" runtime. Find out more about bucketbench here: https://github.com/estesp/bucketbench
TransPose: Towards Explainable Human Pose Estimation by TransformerYasutomo Kawanishi
TransPose proposes a Transformer-based model for human pose estimation that aims to improve explainability. It applies a Transformer encoder to feature maps from an image to estimate keypoint heatmaps. Self-attention can visualize relationships between pixels. The model achieves comparable accuracy to CNN models but with 73% fewer parameters and faster speed. Heatmap visualizations show which locations influence each joint the most.
GraphRAG for Life Science to increase LLM accuracyTomaz Bratanic
GraphRAG for life science domain, where you retriever information from biomedical knowledge graphs using LLMs to increase the accuracy and performance of generated answers
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc
How does your privacy program stack up against your peers? What challenges are privacy teams tackling and prioritizing in 2024?
In the fifth annual Global Privacy Benchmarks Survey, we asked over 1,800 global privacy professionals and business executives to share their perspectives on the current state of privacy inside and outside of their organizations. This year’s report focused on emerging areas of importance for privacy and compliance professionals, including considerations and implications of Artificial Intelligence (AI) technologies, building brand trust, and different approaches for achieving higher privacy competence scores.
See how organizational priorities and strategic approaches to data security and privacy are evolving around the globe.
This webinar will review:
- The top 10 privacy insights from the fifth annual Global Privacy Benchmarks Survey
- The top challenges for privacy leaders, practitioners, and organizations in 2024
- Key themes to consider in developing and maintaining your privacy program
Full-RAG: A modern architecture for hyper-personalizationZilliz
Mike Del Balso, CEO & Co-Founder at Tecton, presents "Full RAG," a novel approach to AI recommendation systems, aiming to push beyond the limitations of traditional models through a deep integration of contextual insights and real-time data, leveraging the Retrieval-Augmented Generation architecture. This talk will outline Full RAG's potential to significantly enhance personalization, address engineering challenges such as data management and model training, and introduce data enrichment with reranking as a key solution. Attendees will gain crucial insights into the importance of hyperpersonalization in AI, the capabilities of Full RAG for advanced personalization, and strategies for managing complex data integrations for deploying cutting-edge AI solutions.
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfPaige Cruz
Monitoring and observability aren’t traditionally found in software curriculums and many of us cobble this knowledge together from whatever vendor or ecosystem we were first introduced to and whatever is a part of your current company’s observability stack.
While the dev and ops silo continues to crumble….many organizations still relegate monitoring & observability as the purview of ops, infra and SRE teams. This is a mistake - achieving a highly observable system requires collaboration up and down the stack.
I, a former op, would like to extend an invitation to all application developers to join the observability party will share these foundational concepts to build on:
Best 20 SEO Techniques To Improve Website Visibility In SERPPixlogix Infotech
Boost your website's visibility with proven SEO techniques! Our latest blog dives into essential strategies to enhance your online presence, increase traffic, and rank higher on search engines. From keyword optimization to quality content creation, learn how to make your site stand out in the crowded digital landscape. Discover actionable tips and expert insights to elevate your SEO game.
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slackshyamraj55
Discover the seamless integration of RPA (Robotic Process Automation), COMPOSER, and APM with AWS IDP enhanced with Slack notifications. Explore how these technologies converge to streamline workflows, optimize performance, and ensure secure access, all while leveraging the power of AWS IDP and real-time communication via Slack notifications.
In the rapidly evolving landscape of technologies, XML continues to play a vital role in structuring, storing, and transporting data across diverse systems. The recent advancements in artificial intelligence (AI) present new methodologies for enhancing XML development workflows, introducing efficiency, automation, and intelligent capabilities. This presentation will outline the scope and perspective of utilizing AI in XML development. The potential benefits and the possible pitfalls will be highlighted, providing a balanced view of the subject.
We will explore the capabilities of AI in understanding XML markup languages and autonomously creating structured XML content. Additionally, we will examine the capacity of AI to enrich plain text with appropriate XML markup. Practical examples and methodological guidelines will be provided to elucidate how AI can be effectively prompted to interpret and generate accurate XML markup.
Further emphasis will be placed on the role of AI in developing XSLT, or schemas such as XSD and Schematron. We will address the techniques and strategies adopted to create prompts for generating code, explaining code, or refactoring the code, and the results achieved.
The discussion will extend to how AI can be used to transform XML content. In particular, the focus will be on the use of AI XPath extension functions in XSLT, Schematron, Schematron Quick Fixes, or for XML content refactoring.
The presentation aims to deliver a comprehensive overview of AI usage in XML development, providing attendees with the necessary knowledge to make informed decisions. Whether you’re at the early stages of adopting AI or considering integrating it in advanced XML development, this presentation will cover all levels of expertise.
By highlighting the potential advantages and challenges of integrating AI with XML development tools and languages, the presentation seeks to inspire thoughtful conversation around the future of XML development. We’ll not only delve into the technical aspects of AI-powered XML development but also discuss practical implications and possible future directions.
Essentials of Automations: The Art of Triggers and Actions in FMESafe Software
In this second installment of our Essentials of Automations webinar series, we’ll explore the landscape of triggers and actions, guiding you through the nuances of authoring and adapting workspaces for seamless automations. Gain an understanding of the full spectrum of triggers and actions available in FME, empowering you to enhance your workspaces for efficient automation.
We’ll kick things off by showcasing the most commonly used event-based triggers, introducing you to various automation workflows like manual triggers, schedules, directory watchers, and more. Plus, see how these elements play out in real scenarios.
Whether you’re tweaking your current setup or building from the ground up, this session will arm you with the tools and insights needed to transform your FME usage into a powerhouse of productivity. Join us to discover effective strategies that simplify complex processes, enhancing your productivity and transforming your data management practices with FME. Let’s turn complexity into clarity and make your workspaces work wonders!
HCL Notes and Domino License Cost Reduction in the World of DLAUpanagenda
Webinar Recording: https://www.panagenda.com/webinars/hcl-notes-and-domino-license-cost-reduction-in-the-world-of-dlau/
The introduction of DLAU and the CCB & CCX licensing model caused quite a stir in the HCL community. As a Notes and Domino customer, you may have faced challenges with unexpected user counts and license costs. You probably have questions on how this new licensing approach works and how to benefit from it. Most importantly, you likely have budget constraints and want to save money where possible. Don’t worry, we can help with all of this!
We’ll show you how to fix common misconfigurations that cause higher-than-expected user counts, and how to identify accounts which you can deactivate to save money. There are also frequent patterns that can cause unnecessary cost, like using a person document instead of a mail-in for shared mailboxes. We’ll provide examples and solutions for those as well. And naturally we’ll explain the new licensing model.
Join HCL Ambassador Marc Thomas in this webinar with a special guest appearance from Franz Walder. It will give you the tools and know-how to stay on top of what is going on with Domino licensing. You will be able lower your cost through an optimized configuration and keep it low going forward.
These topics will be covered
- Reducing license cost by finding and fixing misconfigurations and superfluous accounts
- How do CCB and CCX licenses really work?
- Understanding the DLAU tool and how to best utilize it
- Tips for common problem areas, like team mailboxes, functional/test users, etc
- Practical examples and best practices to implement right away
In his public lecture, Christian Timmerer provides insights into the fascinating history of video streaming, starting from its humble beginnings before YouTube to the groundbreaking technologies that now dominate platforms like Netflix and ORF ON. Timmerer also presents provocative contributions of his own that have significantly influenced the industry. He concludes by looking at future challenges and invites the audience to join in a discussion.
Sudheer Mechineni, Head of Application Frameworks, Standard Chartered Bank
Discover how Standard Chartered Bank harnessed the power of Neo4j to transform complex data access challenges into a dynamic, scalable graph database solution. This keynote will cover their journey from initial adoption to deploying a fully automated, enterprise-grade causal cluster, highlighting key strategies for modelling organisational changes and ensuring robust disaster recovery. Learn how these innovations have not only enhanced Standard Chartered Bank’s data infrastructure but also positioned them as pioneers in the banking sector’s adoption of graph technology.
Cosa hanno in comune un mattoncino Lego e la backdoor XZ?Speck&Tech
ABSTRACT: A prima vista, un mattoncino Lego e la backdoor XZ potrebbero avere in comune il fatto di essere entrambi blocchi di costruzione, o dipendenze di progetti creativi e software. La realtà è che un mattoncino Lego e il caso della backdoor XZ hanno molto di più di tutto ciò in comune.
Partecipate alla presentazione per immergervi in una storia di interoperabilità, standard e formati aperti, per poi discutere del ruolo importante che i contributori hanno in una comunità open source sostenibile.
BIO: Sostenitrice del software libero e dei formati standard e aperti. È stata un membro attivo dei progetti Fedora e openSUSE e ha co-fondato l'Associazione LibreItalia dove è stata coinvolta in diversi eventi, migrazioni e formazione relativi a LibreOffice. In precedenza ha lavorato a migrazioni e corsi di formazione su LibreOffice per diverse amministrazioni pubbliche e privati. Da gennaio 2020 lavora in SUSE come Software Release Engineer per Uyuni e SUSE Manager e quando non segue la sua passione per i computer e per Geeko coltiva la sua curiosità per l'astronomia (da cui deriva il suo nickname deneb_alpha).
Maruthi Prithivirajan, Head of ASEAN & IN Solution Architecture, Neo4j
Get an inside look at the latest Neo4j innovations that enable relationship-driven intelligence at scale. Learn more about the newest cloud integrations and product enhancements that make Neo4j an essential choice for developers building apps with interconnected data and generative AI.
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceIndexBug
Imagine a world where machines not only perform tasks but also learn, adapt, and make decisions. This is the promise of Artificial Intelligence (AI), a technology that's not just enhancing our lives but revolutionizing entire industries.
Programming Foundation Models with DSPy - Meetup SlidesZilliz
Prompting language models is hard, while programming language models is easy. In this talk, I will discuss the state-of-the-art framework DSPy for programming foundation models with its powerful optimizers and runtime constraint system.
Removing Uninteresting Bytes in Software FuzzingAftab Hussain
Imagine a world where software fuzzing, the process of mutating bytes in test seeds to uncover hidden and erroneous program behaviors, becomes faster and more effective. A lot depends on the initial seeds, which can significantly dictate the trajectory of a fuzzing campaign, particularly in terms of how long it takes to uncover interesting behaviour in your code. We introduce DIAR, a technique designed to speedup fuzzing campaigns by pinpointing and eliminating those uninteresting bytes in the seeds. Picture this: instead of wasting valuable resources on meaningless mutations in large, bloated seeds, DIAR removes the unnecessary bytes, streamlining the entire process.
In this work, we equipped AFL, a popular fuzzer, with DIAR and examined two critical Linux libraries -- Libxml's xmllint, a tool for parsing xml documents, and Binutil's readelf, an essential debugging and security analysis command-line tool used to display detailed information about ELF (Executable and Linkable Format). Our preliminary results show that AFL+DIAR does not only discover new paths more quickly but also achieves higher coverage overall. This work thus showcases how starting with lean and optimized seeds can lead to faster, more comprehensive fuzzing campaigns -- and DIAR helps you find such seeds.
- These are slides of the talk given at IEEE International Conference on Software Testing Verification and Validation Workshop, ICSTW 2022.
Driving Business Innovation: Latest Generative AI Advancements & Success StorySafe Software
Are you ready to revolutionize how you handle data? Join us for a webinar where we’ll bring you up to speed with the latest advancements in Generative AI technology and discover how leveraging FME with tools from giants like Google Gemini, Amazon, and Microsoft OpenAI can supercharge your workflow efficiency.
During the hour, we’ll take you through:
Guest Speaker Segment with Hannah Barrington: Dive into the world of dynamic real estate marketing with Hannah, the Marketing Manager at Workspace Group. Hear firsthand how their team generates engaging descriptions for thousands of office units by integrating diverse data sources—from PDF floorplans to web pages—using FME transformers, like OpenAIVisionConnector and AnthropicVisionConnector. This use case will show you how GenAI can streamline content creation for marketing across the board.
Ollama Use Case: Learn how Scenario Specialist Dmitri Bagh has utilized Ollama within FME to input data, create custom models, and enhance security protocols. This segment will include demos to illustrate the full capabilities of FME in AI-driven processes.
Custom AI Models: Discover how to leverage FME to build personalized AI models using your data. Whether it’s populating a model with local data for added security or integrating public AI tools, find out how FME facilitates a versatile and secure approach to AI.
We’ll wrap up with a live Q&A session where you can engage with our experts on your specific use cases, and learn more about optimizing your data workflows with AI.
This webinar is ideal for professionals seeking to harness the power of AI within their data management systems while ensuring high levels of customization and security. Whether you're a novice or an expert, gain actionable insights and strategies to elevate your data processes. Join us to see how FME and AI can revolutionize how you work with data!
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfMalak Abu Hammad
Discover how MongoDB Atlas and vector search technology can revolutionize your application's search capabilities. This comprehensive presentation covers:
* What is Vector Search?
* Importance and benefits of vector search
* Practical use cases across various industries
* Step-by-step implementation guide
* Live demos with code snippets
* Enhancing LLM capabilities with vector search
* Best practices and optimization strategies
Perfect for developers, AI enthusiasts, and tech leaders. Learn how to leverage MongoDB Atlas to deliver highly relevant, context-aware search results, transforming your data retrieval process. Stay ahead in tech innovation and maximize the potential of your applications.
#MongoDB #VectorSearch #AI #SemanticSearch #TechInnovation #DataScience #LLM #MachineLearning #SearchTechnology