QuantumToolkit taking up 100% of CPU when no CSS is loaded
All
Our application has a simple TableView that takes an incoming server object and displays it for the user. When it receives a similar object the model will attempt to find the previous object and update one or two cells with new status values. Nothing taxing one would think. I have turned off the CSS so we are using the default. We also have Platform.runLater in our model so when we are about to update the GUI that takes place.
The application functions correctly, but when ramping up the inserts to say 1 every second we see a slow down in the application. The application does function but response it slow when clicking on drop down menus etc. I have attached a profiler stack trace. And we saw that the QuantumToolkit seems to be doing all of the work. Any ideas on how we can trace if further.
Our object is very simple in that we have some properties that are used to show updates to the row when changed. Most of the fields that need to be updated are set using SimpleDoubleProperty or StringProperty etc.
Apologies for the formatting, this was exported from the profiler.
Call tree (all threads together)
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+-----------------+
| Name | Time (ms) | Own Time (ms) |
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+-----------------+
| +---<All threads> | 77,931 100 % | |
| | | | |
| +---com.sun.javafx.tk.quantum.QuantumToolkit$8.run() | 71,251 91 % | 182 |
| | | | | |
| | +---javafx.scene.Scene$ScenePulseListener.pulse() | 71,009 91 % | 0 |
| | | | | | |
| | | +---javafx.scene.Scene.access$3000(Scene) | 66,294 85 % | 0 |
| | | | | | | |
| | | | +---javafx.scene.Scene.doLayoutPass() | 66,294 85 % | 0 |
| | | | | | | |
| | | | +---javafx.scene.Scene.layoutDirtyRoots() | 66,294 85 % | 0 |
| | | | | | | |
| | | | +---javafx.scene.Parent.layout() | 66,294 85 % | 0 |
| | | | | | | |
| | | | +---javafx.scene.Parent.layout() | 65,188 84 % | 0 |
| | | | | | | | |
| | | | | +---javafx.scene.Parent.layout() | 65,144 84 % | 0 |
| | | | | | | | | |
| | | | | | +---javafx.scene.Parent.layout() | 65,144 84 % | 0 |
| | | | | | | | | |
| | | | | | +---javafx.scene.Parent.layout() | 59,823 77 % | 0 |
| | | | | | | | | | |
| | | | | | | +---com.sun.javafx.scene.control.skin.VirtualFlow.layoutChildren() | 52,938 68 % | 20 |
| | | | | | | | | | | |
| | | | | | | | +---javafx.scene.control.Control.impl_processCSS(boolean) | 44,568 57 % | 0 |
| | | | | | | | | | | | |
| | | | | | | | | +---javafx.scene.Parent.impl_processCSS(boolean) | 44,568 57 % | 0 |
| | | | | | | | | | | | |
| | | | | | | | | +---javafx.scene.Parent.impl_processCSS(boolean) | 30,346 39 % | 0 |
| | | | | | | | | | | | | |
| | | | | | | | | | +---javafx.scene.control.Control.impl_processCSS(boolean) | 30,182 39 % | 0 |
| | | | | | | | | | | | | | |
| | | | | | | | | | | +---javafx.scene.Parent.impl_processCSS(boolean) | 30,182 39 % | 0 |
| | | | | | | | | | | | | | |
| | | | | | | | | | | +---javafx.scene.Node.impl_processCSS(boolean) | 26,135 34 % | 0 |
| | | | | | | | | | | | | | | |
| | | | | | | | | | | | +---com.sun.javafx.css.StyleHelper.transitionToState(Node) | 25,492 33 % | 762 |
| | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | +---javafx.scene.control.Control$12.set(String) | 24,092 31 % | 0 |
| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | +---com.sun.javafx.css.StyleableStringProperty.set(String) | 24,092 31 % | 0 |
| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | +---javafx.beans.property.StringPropertyBase.set(String) | 24,092 31 % | 0 |
| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | +---javafx.beans.property.StringPropertyBase.markInvalid() | 24,092 31 % | 0 |
| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | +---javafx.scene.control.Control$12.invalidated() | 24,092 31 % | 0 |
| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | +---javafx.scene.control.Control.access$500(Control) | 24,092 31 % | 0 |
| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | +---javafx.scene.control.Control.loadSkinClass() | 24,092 31 % | 102 |
| | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | +---java.lang.reflect.Constructor.newInstance(Object[]) | 20,791 27 % | 4,752 |
| | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | +---javafx.scene.Node.addEventHandler(EventType, EventHandler) | 2,848 4 % | 0 |
| | | | | | | | | | | | | | | | | | |
| | | | | | | | | | | | | | | +---javafx.scene.layout.StackPane.<init>() | 1,982 3 % | 0 |
+----------------------------------------------------------------------------------------------------------------------------------------------------------------+-----------------+-----------------+
Generated by YourKit Java Profiler 10.0.6 Feb 27, 2012 11:41:24 AM
HEre is an attempt at a test class. If you run it click start data add, then start updater it simulates the traffic coming from our server. When you start clicking on the qty buttons you see a delay as the amounts increase. If you click stop , then the GUi is okay
package test;
import java.util.Date;
import java.util.Random;
import java.util.concurrent.atomic.AtomicInteger;
import javafx.application.Application;
import javafx.application.Platform;
import javafx.beans.property.SimpleDoubleProperty;
import javafx.beans.property.SimpleIntegerProperty;
import javafx.beans.property.SimpleObjectProperty;
import javafx.beans.property.SimpleStringProperty;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Pos;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.control.TableCell;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableColumn.SortType;
import javafx.scene.control.TableView;
import javafx.scene.control.TextField;
import javafx.scene.control.cell.PropertyValueFactory;
import javafx.scene.layout.HBox;
import javafx.scene.layout.VBox;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import javafx.util.Callback;
public class TestApplication extends Application {
private TableView<OrderDataTableNewRow> exchangesTable = new TableView<OrderDataTableNewRow>();
static ObservableList<OrderDataTableNewRow> data = FXCollections.observableArrayList();
@Override
public void start(final Stage stage) throws Exception {
final VBox rootPane = new VBox();
rootPane.setSpacing(10);
rootPane.setPrefSize(800, 600);
TableColumn<OrderDataTableNewRow, String> clOrderIdCol = new TableColumn<OrderDataTableNewRow, String>("ClOrderId");
clOrderIdCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.CLORDERID_PROPERTY));
clOrderIdCol.setSortable(true);
clOrderIdCol.setPrefWidth(130);
TableColumn<OrderDataTableNewRow, String> exchangeCol = new TableColumn<OrderDataTableNewRow, String>("Exchange");
exchangeCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.EXCHANGE_PROPERTY));
exchangeCol.setSortable(true);
exchangeCol.setPrefWidth(65);
TableColumn<OrderDataTableNewRow, String> securityCodeCol = new TableColumn<OrderDataTableNewRow, String>("Security");
securityCodeCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.SECURITY_CODE_PROPERTY));
securityCodeCol.setSortable(true);
securityCodeCol.setPrefWidth(70);
TableColumn<OrderDataTableNewRow, OrderType> orderTypeCol = new TableColumn<OrderDataTableNewRow, OrderType>("Type");
orderTypeCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,OrderType>(OrderDataTableNewRow.ORDERTYPE_PROPERTY));
orderTypeCol.setSortable(true);
orderTypeCol.setPrefWidth(70);
TableColumn<OrderDataTableNewRow, SideEnum> sideCol = new TableColumn<OrderDataTableNewRow, SideEnum>("Side");
sideCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow, SideEnum>(OrderDataTableNewRow.SIDE_PROPERTY));
sideCol.setSortable(true);
sideCol.setPrefWidth(65);
TableColumn<OrderDataTableNewRow, Double> priceCol = new TableColumn<OrderDataTableNewRow, Double>("Price");
priceCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,Double>(OrderDataTableNewRow.PRICE_PROPERTY));
priceCol.setSortable(true);
priceCol.setPrefWidth(81);
TableColumn<OrderDataTableNewRow, Integer> qtyCol = new TableColumn<OrderDataTableNewRow, Integer>("Qty");
qtyCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,Integer>(OrderDataTableNewRow.QTY_PROPERTY));
qtyCol.setSortable(true);
qtyCol.setPrefWidth(75);
TableColumn<OrderDataTableNewRow, Double> lastPxCol = new TableColumn<OrderDataTableNewRow, Double>("LastPx");
lastPxCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,Double>(OrderDataTableNewRow.LAST_PX_PROPERTY));
lastPxCol.setSortable(true);
lastPxCol.setPrefWidth(81);
TableColumn<OrderDataTableNewRow, Integer> lastQtyCol = new TableColumn<OrderDataTableNewRow, Integer>("LastQty");
lastQtyCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,Integer>(OrderDataTableNewRow.LAST_QTY_PROPERTY));
lastQtyCol.setSortable(true);
lastQtyCol.setPrefWidth(81);
TableColumn<OrderDataTableNewRow, Double> avgPxCol = new TableColumn<OrderDataTableNewRow, Double>("AvgPx");
avgPxCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,Double>(OrderDataTableNewRow.AVG_PX_PROPERTY));
avgPxCol.setSortable(true);
avgPxCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, Integer> cumQtyCol = new TableColumn<OrderDataTableNewRow, Integer>("CumQty");
cumQtyCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,Integer>(OrderDataTableNewRow.CUM_QTY_PROPERTY));
cumQtyCol.setSortable(true);
cumQtyCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, Integer> leavesQtyCol = new TableColumn<OrderDataTableNewRow, Integer>("Leaves");
leavesQtyCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,Integer>(OrderDataTableNewRow.LEAVES_QTY_PROPERTY));
leavesQtyCol.setSortable(true);
leavesQtyCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, String> accountCol = new TableColumn<OrderDataTableNewRow, String>("Account");
accountCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.ACCOUNT_PROPERTY));
accountCol.setSortable(true);
accountCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, String> brokerCol = new TableColumn<OrderDataTableNewRow, String>("Broker");
brokerCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.BROKER_PROPERTY));
brokerCol.setSortable(true);
brokerCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, String> traderCol = new TableColumn<OrderDataTableNewRow, String>("Trader");
traderCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.TRADER_PROPERTY));
traderCol.setSortable(true);
traderCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, OrderStatus> orderStatusCol = new TableColumn<OrderDataTableNewRow, OrderStatus>("OrderStatus");
orderStatusCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow, OrderStatus>(OrderDataTableNewRow.ORDER_STATUS_PROPERTY));
orderStatusCol.setSortable(true);
orderStatusCol.setPrefWidth(81);
TableColumn<OrderDataTableNewRow, ExecutionType> executionTypeCol = new TableColumn<OrderDataTableNewRow, ExecutionType>("ExecType");
executionTypeCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow, ExecutionType>(OrderDataTableNewRow.EXECUTION_TYPE_PROPERTY));
executionTypeCol.setSortable(true);
executionTypeCol.setPrefWidth(81);
TableColumn<OrderDataTableNewRow, Date> expiryCol = new TableColumn<OrderDataTableNewRow, Date>("Expiry");
expiryCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow, Date>(OrderDataTableNewRow.EXPIRY_PROPERTY));
expiryCol.setSortable(true);
expiryCol.setPrefWidth(85);
TableColumn<OrderDataTableNewRow, String> currencyCol = new TableColumn<OrderDataTableNewRow, String>("Currency");
currencyCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.CURRENCY_PROPERTY));
currencyCol.setSortable(true);
currencyCol.setPrefWidth(81);
TableColumn<OrderDataTableNewRow, String> messageCol = new TableColumn<OrderDataTableNewRow, String>("Text");
messageCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.TEXT_PROPERTY));
messageCol.setPrefWidth(140);
TableColumn<OrderDataTableNewRow, String> giveUpCol = new TableColumn<OrderDataTableNewRow, String>("GiveUp");
giveUpCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.GIVEUP_PROPERTY));
giveUpCol.setSortable(true);
giveUpCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, String> giveInCol = new TableColumn<OrderDataTableNewRow, String>("GiveIn");
giveInCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow,String>(OrderDataTableNewRow.GIVEIN_PROPERTY));
giveInCol.setPrefWidth(100);
TableColumn<OrderDataTableNewRow, Date> createdCol = new TableColumn<OrderDataTableNewRow, Date>("Updated");
createdCol.setCellValueFactory(new PropertyValueFactory<OrderDataTableNewRow, Date>(OrderDataTableNewRow.UPDATED_PROPERTY));
createdCol.setSortable(true);
createdCol.setMinWidth(190);
createdCol.setSortType(SortType.DESCENDING);
// Setup all the renders
Callback<TableColumn<OrderDataTableNewRow,String>, TableCell<OrderDataTableNewRow,String>> defaultStringRenderFactory =
new Callback<TableColumn<OrderDataTableNewRow,String>, TableCell<OrderDataTableNewRow,String>>() {
public TableCell<OrderDataTableNewRow,String> call(TableColumn<OrderDataTableNewRow,String> p) {
return new StringFormatCell<OrderDataTableNewRow>(Pos.CENTER);
Callback<TableColumn<OrderDataTableNewRow, SideEnum>, TableCell<OrderDataTableNewRow, SideEnum>> defaultSideCellFactory =
new Callback<TableColumn<OrderDataTableNewRow, SideEnum>, TableCell<OrderDataTableNewRow, SideEnum>>() {
public TableCell<OrderDataTableNewRow, SideEnum> call(TableColumn<OrderDataTableNewRow, SideEnum> p) {
return new SideFormatCell<OrderDataTableNewRow>();
Callback<TableColumn<OrderDataTableNewRow, OrderStatus>, TableCell<OrderDataTableNewRow, OrderStatus>> orderStatusCellFactory =
new Callback<TableColumn<OrderDataTableNewRow, OrderStatus>, TableCell<OrderDataTableNewRow, OrderStatus>>() {
public TableCell<OrderDataTableNewRow, OrderStatus> call(TableColumn<OrderDataTableNewRow, OrderStatus> p) {
return new OrderStatusFormatCell<OrderDataTableNewRow>();
Callback<TableColumn<OrderDataTableNewRow, OrderType>, TableCell<OrderDataTableNewRow, OrderType>> orderTypeCellFactory =
new Callback<TableColumn<OrderDataTableNewRow, OrderType>, TableCell<OrderDataTableNewRow, OrderType>>() {
public TableCell<OrderDataTableNewRow, OrderType> call(TableColumn<OrderDataTableNewRow, OrderType> p) {
return new OrderTypeFormatCell<OrderDataTableNewRow>(null);
clOrderIdCol.setCellFactory(defaultStringRenderFactory);
exchangeCol.setCellFactory(defaultStringRenderFactory);
securityCodeCol.setCellFactory(defaultStringRenderFactory);
orderTypeCol.setCellFactory(orderTypeCellFactory);
sideCol.setCellFactory(defaultSideCellFactory);
orderStatusCol.setCellFactory(orderStatusCellFactory);
accountCol.setCellFactory(defaultStringRenderFactory);
brokerCol.setCellFactory(defaultStringRenderFactory);
traderCol.setCellFactory(defaultStringRenderFactory);
currencyCol.setCellFactory(defaultStringRenderFactory);
messageCol.setCellFactory(defaultStringRenderFactory);
this.exchangesTable.setItems(data);
this.exchangesTable.setTableMenuButtonVisible(true);
ObservableList<TableColumn<OrderDataTableNewRow, ?>> columns = this.exchangesTable.getColumns();
columns.addAll(clOrderIdCol, exchangeCol, securityCodeCol, orderTypeCol, sideCol, priceCol, qtyCol, orderStatusCol, lastQtyCol, lastPxCol, avgPxCol, cumQtyCol, leavesQtyCol, executionTypeCol, accountCol, brokerCol, traderCol, expiryCol, currencyCol, giveUpCol, giveInCol, messageCol, createdCol);
//Layout
final HBox hbox = new HBox();
Button updaterButton = new Button("START_UPDATER");
Button inserterButton = new Button("START_DATA_ADD");
Button stopButton = new Button("STOP");
final TextField qtyField = new TextField();
Button tenButton = new Button("10");
Button twentyButton = new Button("20");
Button fiveButton = new Button("5");
Button threeButton = new Button("3");
hbox.setSpacing(3);
hbox.getChildren().addAll(updaterButton, inserterButton, stopButton, qtyField, tenButton, twentyButton, fiveButton, threeButton);
tenButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
qtyField.clear();
qtyField.setText("10");
twentyButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
qtyField.clear();
qtyField.setText("20");
fiveButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
qtyField.clear();
qtyField.setText("5");
threeButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
qtyField.clear();
qtyField.setText("3");
final AtomicInteger counter = new AtomicInteger();
final Thread runner = new Thread() {
// runnable for that thread
public void run() {
while(true) {
try {
// imitating work
Thread.sleep(new Random().nextInt(100));
} catch (InterruptedException ex) {
ex.printStackTrace();
// update ProgressIndicator on FX thread
Platform.runLater(new Runnable() {
public void run() {
int andIncrement = counter.getAndIncrement();
long orderId = andIncrement;
String clOrderId = andIncrement+"CL";
String exchange = "XEUR";
String code = "ES";
int nextEnumRand = new Random().nextInt(SideEnum.values().length);
SideEnum side = SideEnum.values()[nextEnumRand];
int nextTypeEnumRand = new Random().nextInt(OrderType.values().length);
OrderType orderType = OrderType.values()[nextTypeEnumRand];
int nextSecEnumRand = new Random().nextInt(SecurityType.values().length);
SecurityType securityType = SecurityType.values()[nextSecEnumRand];
String currency = "USD";
Date expiry = new Date();
double price = 92.22;
int qty =10;
String account = "ACCOUNT";
String broker = "BROKER";
String trader = "TRaDER";
OrderDataTableNewRow tableRow = new OrderDataTableNewRow(orderId, clOrderId, exchange, code, side, orderType, securityType, currency, expiry, price, qty, account, broker, trader);
System.out.println("Adding row "+tableRow);
data.add(tableRow);
final Thread updater = new Thread() {
// runnable for that thread
public void run() {
while(true) {
try {
// imitating work
Thread.sleep(new Random().nextInt(100));
} catch (InterruptedException ex) {
ex.printStackTrace();
// update ProgressIndicator on FX thread
Platform.runLater(new Runnable() {
public void run() {
int andIncrement = counter.get();
int nextInt = new Random().nextInt(andIncrement);
OrderDataTableNewRow tableRow = data.get(nextInt);
System.out.println("Updating row "+tableRow);
int nextEnumRand = new Random().nextInt(OrderStatus.values().length);
OrderStatus randDomStatus = OrderStatus.values()[nextEnumRand];
tableRow.setOrderStatus(randDomStatus);
tableRow.setUpdated(new Date());
updaterButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
updater.start();
inserterButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
runner.start();
stopButton.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent arg0) {
runner.stop();
updater.stop();
String defaultCssStyleResource = this.getClass().getResource("style_blue.css").getFile();
this.exchangesTable.prefWidthProperty().bind(rootPane.widthProperty());
this.exchangesTable.prefHeightProperty().bind(rootPane.heightProperty());
rootPane.getChildren().addAll(hbox, exchangesTable);
Scene scene = new Scene(rootPane, 400, 400, Color.WHITE);
scene.getStylesheets().add(defaultCssStyleResource);
stage.setResizable(true);
stage.setScene(scene);
stage.show();
enum SideEnum {
BUY,
SELL
enum SecurityType {
STOCK,
BOND,
FUTURE
enum OrderType {
LIMIT,
MARKET,
STOP
enum OrderStatus {
EXECUTED,
PENDING,
FILLED,
CANCELLED,
WORKING,
PENDINGNEW
enum ExecutionType {
EXECUTED,
FILLED,
CANCELLED,
public static void main(String[] args) {
Application.launch(TestApplication.class, args);
public class OrderDataTableNewRow {
public static final String CLORDERID_PROPERTY = "clOrderId";
public static final String EXCHANGE_PROPERTY = "exchange";
public static final String SECURITY_CODE_PROPERTY = "code";
public static final String SIDE_PROPERTY = "side";
public static final String PRICE_PROPERTY = "price";
public static final String ORDERTYPE_PROPERTY = "orderType";
public static final String QTY_PROPERTY = "qty";
public static final String LAST_PX_PROPERTY = "lastPx";
public static final String LAST_QTY_PROPERTY = "lastQty";
public static final String AVG_PX_PROPERTY = "avgPx";
public static final String CUM_QTY_PROPERTY = "cumQty";
public static final String LEAVES_QTY_PROPERTY = "leavesQty";
public static final String ACCOUNT_PROPERTY = "account";
public static final String BROKER_PROPERTY = "broker";
public static final String TRADER_PROPERTY = "trader";
public static final String ORDER_STATUS_PROPERTY = "orderStatus";
public static final String EXECUTION_TYPE_PROPERTY = "executionType";
public static final String EXPIRY_PROPERTY = "expiry";
public static final String CURRENCY_PROPERTY = "currency";
public static final String TEXT_PROPERTY = "text";
public static final String GIVEUP_PROPERTY = "giveUp";
public static final String GIVEIN_PROPERTY = "giveIn";
public static final String UPDATED_PROPERTY = "updated";
private final long orderId;
private final String clOrderId;
private final String exchange;
private final String code;
private final SideEnum side;
private final OrderType orderType;
private final SecurityType securityType;
private final String account;
private final String broker;
private final String trader;
private final Date expiry;
private final String currency;
private final double price;
private final int qty;
private final SimpleObjectProperty<OrderStatus> orderStatus = new SimpleObjectProperty<OrderStatus>();
private final SimpleObjectProperty<ExecutionType> executionType = new SimpleObjectProperty<ExecutionType>();
private final SimpleDoubleProperty lastPx = new SimpleDoubleProperty();
private final SimpleIntegerProperty lastQty = new SimpleIntegerProperty();
private final SimpleIntegerProperty cumQty = new SimpleIntegerProperty();
private final SimpleIntegerProperty leavesQty = new SimpleIntegerProperty();
private final SimpleDoubleProperty avgPx = new SimpleDoubleProperty();
private final SimpleStringProperty externalOrderId = new SimpleStringProperty();
private final SimpleStringProperty text = new SimpleStringProperty();
private final SimpleStringProperty giveUp = new SimpleStringProperty();
private final SimpleStringProperty giveIn = new SimpleStringProperty();
private final SimpleObjectProperty<Date> updated = new SimpleObjectProperty<Date>();
* Creates a new instance of {@link OrderDataTableNewRow}.
public OrderDataTableNewRow(long orderId, String clOrderId, String exchange, String code, SideEnum side, OrderType orderType, SecurityType securityType, String currency,
Date expiry, double price, int qty, String account, String broker, String trader) {
this.orderId = orderId;
this.clOrderId = clOrderId;
this.exchange = exchange;
this.code = code;
this.side = side;
this.orderType = orderType;
this.currency = currency;
this.expiry = expiry;
this.securityType = securityType;
this.account = account;
this.broker = broker;
this.trader = trader;
this.price = price;
this.qty = qty;
public void setUpdated(Date date) {
this.updated.set(date);
public void setOrderStatus(OrderStatus randDomStatus) {
this.orderStatus.set(randDomStatus);
* @return the orderId
public final long getOrderId() {
return this.orderId;
* @return the clOrderId
public final String getClOrderId() {
return this.clOrderId;
* @return the exchange
public final String getExchange() {
return this.exchange;
* @return the code
public final String getCode() {
return this.code;
* @return the side
public final SideEnum getSide() {
return this.side;
* @return the orderType
public final OrderType getOrderType() {
return this.orderType;
* @return the securityType
public final SecurityType getSecurityType() {
return this.securityType;
* @return the account
public final String getAccount() {
return this.account;
* @return the broker
public final String getBroker() {
return this.broker;
* @return the trader
public final String getTrader() {
return this.trader;
* @return the expiry
public final Date getExpiry() {
return this.expiry;
* @return the currency
public final String getCurrency() {
return this.currency;
* @return the price
public final double getPrice() {
return this.price;
* @return the qty
public final int getQty() {
return this.qty;
* @return the orderStatus
public final SimpleObjectProperty<OrderStatus> getOrderStatus() {
return this.orderStatus;
* @return the executionType
public final SimpleObjectProperty<ExecutionType> getExecutionType() {
return this.executionType;
* @return the lastPx
public final SimpleDoubleProperty getLastPx() {
return this.lastPx;
* @return the lastQty
public final SimpleIntegerProperty getLastQty() {
return this.lastQty;
* @return the cumQty
public final SimpleIntegerProperty getCumQty() {
return this.cumQty;
* @return the leavesQty
public final SimpleIntegerProperty getLeavesQty() {
return this.leavesQty;
* @return the avgPx
public final SimpleDoubleProperty getAvgPx() {
return this.avgPx;
* @return the externalOrderId
public final SimpleStringProperty getExternalOrderId() {
return this.externalOrderId;
* @return the text
public final SimpleStringProperty getText() {
return this.text;
* @return the giveUp
public final SimpleStringProperty getGiveUp() {
return this.giveUp;
* @return the giveIn
public final SimpleStringProperty getGiveIn() {
return this.giveIn;
* @return the updated
public final SimpleObjectProperty<Date> getUpdated() {
return this.updated;
* @return the created
public final SimpleObjectProperty<Date> updatedProperty() {
return this.updated;
* @return the lastPrice
public final SimpleDoubleProperty lastPxProperty() {
return this.lastPx;
* @return the lastQty
public final SimpleIntegerProperty lastQtyProperty() {
return this.lastQty;
* @return the cumQty
public final SimpleIntegerProperty cumQtyProperty() {
return this.cumQty;
* @return the averagePrice
public final SimpleDoubleProperty avgPxProperty() {
return this.avgPx;
* @return the executionStatus
public final SimpleObjectProperty<ExecutionType> executionTypeProperty() {
return this.executionType;
* @return the leavesQty
public SimpleIntegerProperty leavesQtyProperty() {
return this.leavesQty;
* @return the text
public final SimpleStringProperty textProperty() {
return this.text;
* @return the orderId
public final SimpleStringProperty externalOrderIdProperty() {
return this.externalOrderId;
* @return the orderStatus
public final SimpleObjectProperty<OrderStatus> orderStatusProperty() {
return this.orderStatus;
* @return the giveUp
public final SimpleStringProperty giveUpProperty() {
return this.giveUp;
* @return the giveIn
public final SimpleStringProperty giveInProperty() {
return this.giveIn;
public class StringFormatCell<T> extends TableCell<T, String> {
private final Pos alignment;
private final String cssFormat;
* Creates a new instance of {@link IntegerFormatCell}.
public StringFormatCell(Pos alignment) {
this(null, alignment);
* Creates a new instance of {@link IntegerFormatCell}.
public StringFormatCell(String cssFormat, Pos alignment) {
this.cssFormat = cssFormat;
this.alignment = alignment;
setId(this.cssFormat);
* {@inheritDoc}
* @see javafx.scene.control.Cell#updateItem(java.lang.Object, boolean)
@Override
protected void updateItem(String item, boolean empty) {
if(item == null) {
return;
// calling super here is very important - don't skip this!
super.updateItem(item, empty);
setText(item);
setAlignment(alignment);
public class SideFormatCell<T> extends TableCell<T, SideEnum> {
* Creates a new instance of {@link SideFormatCell}.
public SideFormatCell() {
setAlignment(Pos.CENTER);
* {@inheritDoc}
* @see javafx.scene.control.Cell#updateItem(java.lang.Object, boolean)
@Override
protected void updateItem(SideEnum item, boolean empty) {
if(item == null) {
return;
// calling super here is very important - don't skip this!
super.updateItem(item, empty);
String name = item.name();
setText(name);
switch (item) {
case BUY:
setId("bidPriceCell");
break;
case SELL:
setId("askPriceCell");
break;
public class OrderStatusFormatCell<T> extends TableCell<T, OrderStatus> {
* Creates a new instance of {@link OrderStatusFormatCell}.
public OrderStatusFormatCell() {
setAlignment(Pos.CENTER);
* {@inheritDoc}
* @see javafx.scene.control.Cell#updateItem(java.lang.Object, boolean)
@Override
protected void updateItem(OrderStatus item, boolean empty) {
if(item == null) {
return;
// calling super here is very important - don't skip this!
super.updateItem(item, empty);
switch (item) {
case PENDING:
setId("statusWorkingColumn");
setText("Working");
break;
case PENDINGNEW:
setId("statusPendingColumn");
setText("Pending New");
break;
case CANCELLED:
setId("statusPendingCancelColumn");
setText("Pending Cancel");
break;
case EXECUTED:
setId("statusPartFilledColumn");
setText("Part Filled");
break;
public class OrderTypeFormatCell<T> extends TableCell<T, OrderType> {
* Creates a new instance of {@link OrderTypeFormatCell}.
public OrderTypeFormatCell(String cssStyleName) {
setId(cssStyleName);
setAlignment(Pos.CENTER);
* {@inheritDoc}
* @see javafx.scene.control.Cell#updateItem(java.lang.Object, boolean)
@Override
protected void updateItem(OrderType item, boolean empty) {
if(item == null) {
return;
// calling super here is very important - don't skip this!
super.updateItem(item, empty);
String itemAsString = item.name();
setText(itemAsString);
switch (item) {
case LIMIT:
setId("orderTypeLimit");
setText("Limit");
break;
case MARKET:
setId("orderTypeMarket");
setText("Market");
break;
case STOP:
setId("orderTypeStop");
setText("Stop");
break;
}
Similar Messages
-
Dock taking up 100% of CPU
I'm basically using my mac pro as I received it 3 months ago and four times the machine starting moving at sub-snail speed. Twice when I wasn't running anything at all. I found that the dock was sucking up nearly 100% of the CPU. Could something have gotten corrupted even though I haven't changed any preferences? I fixed this the first time by rebooting the machine and each subsequent time by doing a force quit on the dock. I'd prefer a permanent solution to this if somebody knows it. Thanks.
I am currently running Snow Leopard 10.6.2 on all three of my computers. The 13 MacBook Pro was purchased Dec 2009 with Snow Leopard installed. The 17 MacBook Pro and the iMac were upgraded to Snow Leopard mid January 2010. ALL three computers have experienced freezes due to CPU usage levels. Prior to upgrading to Snow Leopard this had not happened. Since the freezes occur on an apparently random basis I could not link it to an activity or an application. Applecare suggested Safe Boot, Reset PRAM--it is hard to say whether there was any impact since Restart clears the condition until next time. I have been leaving Activity Monitor open when I remember to open it, since it is impossible to open Activity Monitor after the freeze has started.
I am posting in this thread since yesterday I started the 17 MacBook Pro while working on my iMac. I started the Activity Monitor but didn't get around to opening any other application for some time. When I attempted to move the cursor I got the spinning beach ball. Activity Monitor showed the Dock at 60-70% cpu utilization. It also showed "activitymonitord" at 53.7%.
I am hoping that this post might bring some suggestions -
CAN taking Near 100% of CPU
I have been on this problem for a few weeks now and still unable to fix the problem:
Description of the problem:
1- When reading from 2 CAN channels with a Real-Time PXI Controller, the Processor runs between 70% and 80% (but most often at 80%). (Nothing else runs on the RT, but it will be required that more vis to run on it in the futur.) When running the vi on the Host PC, the processor on the RT controller tops at 100%. Some Data loss occurs.
2- Minor problem: Board doesn't always reset even with 2 resets.)
Program Content (view attachement for more details):
1- While Loop at 2500us containing a sequence structure to read 2 Canbus ports in sequence. To read the CAN, I use a ncGetAttr (Read Entries Pending) followed with a ncReadNetMult.v. Data is then unbundled and set into an array in order to use a shared variable (using Real-Time FIFO). This alone takes 80% of the CPU LOAD.
2- First sequence: Canbus Reset.vi. Second Sequence has the Config (set at 1MHz), Open then CActions of Reset and Start.
Description of Task:
Read 2 CAN channels from a UUT on a Real-Time PXI Controller (8196). 16 CAN frames per whole CAN Message per channel. The 16 CAN frames are sent in 2.5ms. The Host PC that reads the data from the Real-Time Controller at any rate (I usually set it at 4 times the loop time of the RT Target).
FIFO Configuration:
12 elements of the CAN frame + RT TickCounter. As 64bits Double or 64 bits U64. 13 elements per array. 512 Arrays (this number varied alot). The lower the # of arrays, the more random data loss occurs, but the higher it is, the more the duration of data loss is long. Note that sometimes i get the last frame and appears in the log as many times as loop size.
Host PC:
Reads the Shared Variable in a For Loop with the #the same as the FIFO size (or higher).
Note: Many Disable diagrams, but doesn't affect the program in any way. Its other tests done.
Thank you.
Attachments:
CAN Channel 1 vi.JPG 186 KB
CAN Channel 2 vi.JPG 187 KB
CAN Config vi.JPG 173 KBThanks for the replies, I fixed the loss of data, but not the CPU load by doing the following:
I finally tried Queues on the RT (didn't earlier because it was way too slow to execute when I was running my simulation on Windows). I based my vi with the NI Example Queue basics.vi. I also optimized CReadMult, I send the Data direclty into an array with I insert the Tickcount* then send it to the Host PC for it to process the rest of the frame building and then to process the information. Doing both (Queues + CReadMult) helped since now I do not have anymore loss of data, however the CPU LOAD goes up to from ~75% (at start) to 87-89% and stays there.
*Tickcount: I've noticed a weird effect with the Tickcount: I'm sending the msec time and the loop which adds it to the array is set at 2.5ms, however the tickcount read at the Host PC is always on a 10ms timer difference (instead of ~2.5) which also seems to correspond to the same loop timer as the secondary while loops that all they do is sent the information to the Host PC. The priority of the CAN loop is 1 and the priority of the SV loops are 100. Unless i'm mistaken, priority 1 should be of highest priority and 100 is lowest (excuted only when CPU has "extra" time).
With the Queues:
Currently it worked (without data loss) when both CAN channels are read in sequence with 2 different loops to send the informatiosn to the PC through shared variables. The RT FIFO is set at 32 Arrays of 2048 Elements. 2048 because the CReadMult seemed to have been going up really high randomly. I have not had the time to optimize the RT FIFO or really know how to cound it exactly. When using the size indicator of the Queues, they are always full. I only use Enqueue and Dequeue.
@O_Proulx:
CReadMult seems to be the main problem of the dynamic array since the information gotten from the CAN seems to vary alot. Are you saying I should insert the data from CReadMult into a fixed array size before sending it through the SV ? I don't think that would help since it seems that the CReadMult automatically creates dynamic arrays.
@Caleb:
Like I said previously in this post, I stripped everything down, even the bitwise operations of CReadMult to do them on the Host PC. I'm using the NI PXI-8461/2 Series 2 2-Port High-Speed Can. Next time I get time on the benchtest, I'll verify the CPU Load time when removing the SV loops.
Thanks. -
Itunes Uses 100% of CPU When Ejecting Disc. How can I solve this?
Every time I eject a disc in iTunes I get the beach ball and the program won't respond. I can go to other programs while this is happening but iTunes is froze. I opened Activity Monitor and noticed iTunes was pegging the CPU. Why would this be happening?
Stats:
iTunes 11.0.2
OS X 10.6.8
2.53 GHz Intel Core i5
4 GB 1067 MHz DDR3Every time I eject a disc in iTunes I get the beach ball and the program won't respond. I can go to other programs while this is happening but iTunes is froze. I opened Activity Monitor and noticed iTunes was pegging the CPU. Why would this be happening?
Stats:
iTunes 11.0.2
OS X 10.6.8
2.53 GHz Intel Core i5
4 GB 1067 MHz DDR3 -
CWBufferedAO.zip uses 100% of CPU
This sample program is modified as follows,
CWAO1.UpdateClock.Frequency = 1024
CWAO1.NUpdates = 1024
CWAO1.ProgressInterval = 256
When PCI-MIO-XE16-10 is used and NUpdates is the same value as Frquency, this program uses 100% of CPU and "STOP" button does not work.
Our program was developed for DAQCard-6036E and was intended to use it on PCI-MIO-16XE-10. Because of programming requirement, the stopping process should be taken within 1 second after STOP button is clicked.
Is there any reason why this sample program uses 100% of CPU when small value of NUpdates is applied?
Attachments:
CWBufferedAO.zip 5 KBMy PC is DELL Precision-620 (2 CPU's) with Win2000.
The sampling rate is 1024Hz so that 256 samples take 250ms. It is very slow operation.
STOP button does not work and some user logics do not work in Progress routine.
Attached a slighly modified program to show you the strange opeartion in Nidak32.sys. Are the Update count
and Time Editbox updated on your PC?
Attachments:
Buffered_Analog_Output.Vbp 1 KB
BufferedAnalogOutput.Frm 26 KB -
Process: "kernel_task" taking up almost 100% of CPU
A few hours ago, I noticed my MBP start hanging and generally processing very slow. Apps would freeze at random times, and generally a lot of odd behavior.
I checked the activity monitor to see what might be causing this. It turns out, the process "kernel_task" is using almost 100% of my CPU. It has stayed within the 70-100% range, and has yet to go down. I tried many things, including restarting my Mac many times, but it remains the same.
Does anyone know why "kernel_task" is taking up so much of my CPU? Is there a way to somehow "reset" the process to get it back to normal? Any help would be much appreciated, since my Mac is, for just about all purposes, useless right now. It took me about an hour just to get to this page and type this message.
Thanks in advance!
P.S. I attached a screenshot of the process in the Activity Monitor. You can view it here: http://images12.fotki.com/v203/filejMEm/9ae47/8/1659168/8691947/kernel_task.pngI just want to add that I think the "kernel_task" might have started eating CPU when I stopped a RAR program in the middle of extracting an archive. I'm not 100% sure though that this is when the problem started.
-
Wss tracing is taking 100% of cpu.
wss tracing is taking 100% of cpu. How to fix this ? or any other way to disable this and then enable back with out any issues ?
SriniFirst trace if you are running any heavy process on the server if not then , are you running any custom code, it seems some code is opening SP connection and not closing this is what happens most of the time.
You can run this script to see all open connection for each database on your SQL to troubleshoot the issue.
select a.dbid,b.name, count(a.dbid) as TotalConnection
from sys.sysprocesses a
inner join sys.databases b on a.dbid = b.database_id
group by a.dbid, b.name
Mark ANSWER if this reply resolves your query, If helpful then VOTE HELPFUL
INSQLSERVER.COM
Mohammad Nizamuddin -
IChatAgent takes more than 100% of CPU
The iChatAgent takes more than 100% of CPU. It works normally for 10-15min with little CPU usage but then takes 100% of CPU and stays like that until I quit/kill the process. I tried waiting for hours to see it might go down is usage, but no, and the cpu fan remains on continuously.
I simply use it for text based chatting, and have disabled audio, video,microphone etc, and still this behavior that I can't use it for more than 15min.
Here is the iChat version: Version 5.0.3 (745)
Macbook Pro/10.6.4/Intel Core i7
I have tried removing ~/Library/preferences/com.apple.iChatAgent.plist as suggested elsewhere, and that hasn't helped either.Thanks again Ralph.
No, I do not have any add-ons, just out-of-the-box ichat without any audio, video in use.
At this stage unfortunately, I can't continue using iChat as it hogs up the CPU in less than 15min. And that I do not experience any problem with other chat-clients such as AIM or jabber, so switching over to those until there is a resolution.
Suhas
Here is a process-inspection done through ActivityMonitor when it was taking 100%:
Sampling process 517 for 3 seconds with 1 millisecond of run time between samples
Sampling completed, processing symbols...
Analysis of sampling iChatAgent (pid 517) every 1 millisecond
Call graph:
2457 Thread_7542 DispatchQueue_1: com.apple.main-thread (serial)
2457 start
2457 main
2454 -[NSRunLoop(NSRunLoop) run]
2439 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
2160 CFRunLoopRunSpecific
2087 __CFRunLoopRun
670 machport_insertmember
662 mach_msg
661 machmsgtrap
1 mach_msg
5 machport_insertmember
3 migget_replyport
596 machport_extractmember
589 mach_msg
577 machmsgtrap
12 mach_msg
4 machport_extractmember
3 migget_replyport
389 mach_msg
371 machmsgtrap
18 mach_msg
355 __CFRunLoopDoSources0
237 _MessageAvailable(void*)
110 XprtGetMessage
106 XPRT::InternalGetMessage(void*, unsigned int&, void*&, void*&, bool)
39 XPRT::TMessageQueue::GetMessage(bool)
14 XPRT::TPtrList::RemoveHead()
7 XPRT::TList<void*, XPRT::TDynamicTraits>::FreeNode(XPRT::TList<void*, XPRT::TDynamicTraits>::TNode*)
6 XPRT::TList<void*, XPRT::TDynamicTraits>::FreeNode(XPRT::TList<void*, XPRT::TDynamicTraits>::TNode*)
1 XPRT::TDynamicTraits::VOrphanElement(void*) const
7 XPRT::TPtrList::RemoveHead()
11 pthreadmutexunlock
8 pthreadmutexlock
4 spinlock
2 OSSpinLockUnlock
2 pthreadmutexlock
3 XPRT::TMessageQueue::GetMessage(bool)
3 _spinlock
31 free
20 szone_size
11 free
24 szonefree_definitesize
23 szonefree_definitesize
1 spinlock
5 XPRT::InternalGetMessage(void*, unsigned int&, void*&, void*&, bool)
5 operator delete(void*)
1 XPRT::TCritSec::Unlock()
1 _spinlock
2 XprtTlsGetValue
2 pthread_getspecific
110 XprtGiveMessage
85 COOL::TSocket::SocketMessageProc(unsigned int, void*, void*)
50 XprtPostMessage
48 XPRT::InternalPostMessage(void*, unsigned int, void*, void*)
25 operator new(unsigned long)
21 malloc
18 malloczonemalloc
10 szonemalloc_shouldclear
6 szonemalloc_shouldclear
4 _cpunumber
5 malloczonemalloc
2 _spinlock
1 szone_malloc
3 malloc
4 operator new(unsigned long)
10 XPRT::TMessageQueue::PostMessage(XPRT::SMessage*)
5 XPRT::TPtrList::AddTail(void*)
4 XPRT::TList<void*, XPRT::TDynamicTraits>::NewNode(void*, XPRT::TList<void*, XPRT::TDynamicTraits>::TNode*, XPRT::TList<void*, XPRT::TDynamicTraits>::TNode*)
1 XPRT::TPtrList::AddTail(void*)
4 pthreadmutexlock
1 _spinlock
6 pthreadmutexunlock
5 pthreadmutexunlock
1 spinlock
2 XPRT::InternalPostMessage(void*, unsigned int, void*, void*)
2 _spinlock
1 XPRT::TCritSec::Lock()
1 dyldstub__spinlock
1 dyldstub__spinunlock
2 XprtPostMessage
14 COOL::TSocket::FireDataAvailable()
13 COOL::TProxiedSocket::OnDataAvailable(IInputStream*, IUnknown*)
6 XPTL::CComObject<COOL::TProxiedSocket>::AddRef()
5 XPTL::CComObject<COOL::TProxiedSocket>::Release()
2 COOL::TProxiedSocket::OnDataAvailable(IInputStream*, IUnknown*)
1 COOL::TSocket::FireDataAvailable()
7 non-virtual thunk to COOL::TProxiedSocket::OnDataAvailable(IInputStream*, IUnknown*)
6 COOL::TSocket::SocketMessageProc(unsigned int, void*, void*)
6 XPRT::TPtrFromPtrMap::Lookup(void*, void*&) const
6 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::Lookup(void*, void*&) const
3 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::GetNode(void*, unsigned int&, unsigned int&, XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::TNode*&) const
2 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::GetNode(void*, unsigned int&, unsigned int&, XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::TNode*&) const
1 XPRT::TDynamicKeyTraits::VHashKey(void const*) const
3 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::Lookup(void*, void*&) const
2 XPTL::CComObject<COOL::TSocket>::AddRef()
17 XPRT::TMessageMap::Lookup(unsigned int)
7 XPRT::TPtrFromPtrMap::Lookup(void*, void*&) const
5 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::Lookup(void*, void*&) const
4 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::GetNode(void*, unsigned int&, unsigned int&, XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::TNode*&) const
3 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::GetNode(void*, unsigned int&, unsigned int&, XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::TNode*&) const
1 XPRT::TDynamicKeyTraits::VHashKey(void const*) const
1 XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::Lookup(void*, void*&) const
2 XPRT::TPtrFromPtrMap::Lookup(void*, void*&) const
3 _spinlock
3 pthreadmutexunlock
2 XPRT::TMessageMap::Lookup(unsigned int)
2 pthreadmutexlock
1 OSSpinLockUnlock
1 pthreadmutexlock
8 XprtGiveMessage
6 _MessageAvailable(void*)
4 CFRunLoopSourceSignal
3 CFRunLoopSourceSignal
1 spinlock
4 _IMWillLog
2 _spinlock
1 OSSpinLockUnlock
85 CFSetApplyFunction
84 CFBasicHashApply
40 CFBasicHashGetBucket
28 _CFSetApplyFunction_block_invoke1
20 __CFRunLoopCollectSources0
12 __CFRunLoopCollectSources0
4 CFRetain
3 _CFRetain
1 OSAtomicCompareAndSwap32Barrier
1 _compare_andswap32
8 _CFSetApplyFunction_block_invoke1
16 CFBasicHashApply
1 CFSetApplyFunction
16 __CFRunLoopDoSources0
4 CFRelease
3 _CFRelease
2 CFGetTypeID
2 dyldstubOSAtomicCompareAndSwap32Barrier
2 dyldstub_IMWillLog
1 CFBasicHashGetCount
1 CFSetGetCount
1 OSAtomicCompareAndSwap32Barrier
1 _compare_andswap32
1 OSSpinLockUnlock
29 CFSetContainsValue
25 CFBasicHashGetCountOfKey
25 _CFBasicHashFindBucket1
13 _CFBasicHashFindBucket1
10 __CFStringHash
1 CFHash
1 __CFBasicHashStandardCallback
4 CFSetContainsValue
24 __CFRunLoopRun
9 _spinlock
5 dispatch_get_main_queue_port4CF
3 CFRunLoopGetMain
2 OSSpinLockUnlock
2 dyldstubOSSpinLockLock
1 dyldstub_mach_msgtrap
1 pthread_getspecific
1 pthreadmainnp
36 __CFRunLoopFindMode
31 CFSetGetValue
30 CFBasicHashFindBucket
29 _CFBasicHashFindBucket1
9 __CFStringHash
8 _CFBasicHashFindBucket1
6 CFHash
5 __CFBasicHashStandardCallback
3 CFEqual
2 __CFBasicHashStandardCallback
1 __CFRunLoopModeHash
1 CFBasicHashFindBucket
1 CFSetGetValue
2 __bzero
2 memset
1 __CFRunLoopFindMode
17 __CFRunLoopModeIsEmpty
17 CFSetContainsValue
17 CFBasicHashGetCountOfKey
17 _CFBasicHashFindBucket1
12 __CFStringHash
5 _CFBasicHashFindBucket1
8 CFRunLoopRunSpecific
7 _spinlock
2 spinlock
2 dyldstub_machmsg
1 dyldstubOSSpinLockUnlock
121 _CFRunLoopFinished
80 __CFRunLoopFindMode
66 CFSetGetValue
63 CFBasicHashFindBucket
57 _CFBasicHashFindBucket1
22 __CFBasicHashStandardCallback
16 CFEqual
14 CFEqual
2 __CFRunLoopModeEqual
6 __CFBasicHashStandardCallback
17 _CFBasicHashFindBucket1
9 __CFStringHash
6 CFHash
3 __CFRunLoopModeHash
5 CFBasicHashFindBucket
1 __CFBasicHashStandardCallback
3 CFSetGetValue
6 __bzero
5 __CFRunLoopFindMode
2 memset
1 _CFRuntimeSetInstanceTypeID
29 __CFRunLoopModeIsEmpty
19 CFSetContainsValue
14 CFBasicHashGetCountOfKey
13 _CFBasicHashFindBucket1
7 __CFStringHash
3 _CFBasicHashFindBucket1
2 __CFBasicHashStandardCallback
1 CFHash
1 CFBasicHashGetCountOfKey
5 CFSetContainsValue
6 pthreadmainnp
2 pthread_getspecific
1 CFRunLoopGetMain
1 __CFRunLoopModeIsEmpty
6 _CFRunLoopFinished
2 OSSpinLockUnlock
2 _spinlock
2 dyldstub_pthread_mainnp
39 _CFAutoreleasePoolPop
23 _CFAutoreleasePoolPop
7 pthread_setspecific
3 pthread_getspecific
2 objcgetFreedObjectClass
2 objc_collectingEnabled
2 pthread_self
29 -[NSCFString isEqual:]
11 -[NSCFString isEqual:]
8 CFStringGetCStringPtr
4 object_getClass
3 objcmsgSendvtable2
2 _CFStringGetLength2
1 NSClassFromObject
28 CFAbsoluteTimeGetCurrent
21 gettimeofday
18 __gettimeofday
12 __nanotime
6 __gettimeofday
3 gettimeofday
7 CFAbsoluteTimeGetCurrent
17 _CFAutoreleasePoolPush
8 pthread_setspecific
7 _CFAutoreleasePoolPush
2 objc_collectingEnabled
13 -[NSRunLoop(NSRunLoop) runMode:beforeDate:]
6 NSPopAutoreleasePool
2 NSPopAutoreleasePool
2 _CFExecutableLinkedOnOrAfter
2 objc_collectingEnabled
5 _spinlock
4 objc_msgSend
3 dyldstub_CFStringGetLength2
3 dyldstub_pthreadsetspecific
2 CFRunLoopRunInMode
2 CFRunLoopGetCurrent
2 dyldstubCFStringGetCStringPtr
2 dyldstubOSSpinLockUnlock
1 dyldstub__objcgetFreedObjectClass
1 dyldstubgettimeofday
1 dyldstub_objccollectingEnabled
1 dyldstub_pthreadgetspecific
1 objcmsgSendvtable12
9 objc_msgSend
3 -[NSRunLoop(NSRunLoop) run]
1 +[NSDate distantFuture]
1 CFRunLoopRunInMode
1 NSPushAutoreleasePool
3 dyldstub_objcmsgSend
2457 Thread_7543 DispatchQueue_2: com.apple.libdispatch-manager (serial)
2457 start_wqthread
2457 pthreadwqthread
2457 dispatch_workerthread2
2457 dispatch_queueinvoke
2457 dispatch_mgrinvoke
2457 kevent
2457 Thread_7553
2457 thread_start
2457 pthreadstart
2457 XPRT::_ThreadProc(void*)
2457 XPRT::TTimer::ThreadProc(void*)
2457 XPRT::TCondVar::Wait(int)
2457 pthread_condwait
2457 _semwaitsignal
2457 Thread_7554
2457 thread_start
2457 pthreadstart
2457 XPRT::_ThreadProc(void*)
2457 COOL::TSocket::SocketThreadProc(void*)
2457 select$DARWIN_EXTSN
Total number in stack (recursive counted multiple, when >=5):
11 _spinlock
6 OSSpinLockUnlock
5 __CFBasicHashStandardCallback
5 __CFStringHash
5 _CFBasicHashFindBucket1
5 spinlock
Sort by top of stack, same collapsed (when >= 5):
_semwaitsignal 2457
kevent 2457
select$DARWIN_EXTSN 2457
machmsgtrap 1609
__CFStringHash 47
_CFBasicHashFindBucket1 46
CFBasicHashGetBucket 40
_spinlock 37
mach_msg 31
__CFRunLoopRun 24
_CFAutoreleasePoolPop 23
szonefree_definitesize 23
szone_size 20
pthreadmutexunlock 19
CFEqual 17
CFBasicHashApply 16
__CFRunLoopDoSources0 16
pthread_setspecific 15
CFHash 14
-[NSRunLoop(NSRunLoop) runMode:beforeDate:] 13
objc_msgSend 13
__CFBasicHashStandardCallback 12
__CFRunLoopCollectSources0 12
__nanotime 12
-[NSCFString isEqual:] 11
free 11
CFSetContainsValue 9
OSSpinLockUnlock 9
spinlock 9
CFRunLoopRunSpecific 8
CFStringGetCStringPtr 8
XprtGiveMessage 8
_CFSetApplyFunction_block_invoke1 8
__bzero 8
pthread_getspecific 8
CFAbsoluteTimeGetCurrent 7
XPRT::TPtrList::RemoveHead() 7
_CFAutoreleasePoolPush 7
non-virtual thunk to COOL::TProxiedSocket::OnDataAvailable(IInputStream*, IUnknown*) 7
pthreadmainnp 7
pthreadmutexlock 7
CFBasicHashFindBucket 6
COOL::TSocket::SocketMessageProc(unsigned int, void*, void*) 6
XPRT::TList<void*, XPRT::TDynamicTraits>::FreeNode(XPRT::TList<void*, XPRT::TDynamicTraits>::TNode*) 6
XPTL::CComObject<COOL::TProxiedSocket>::AddRef() 6
_CFRunLoopFinished 6
_MessageAvailable(void*) 6
__CFRunLoopFindMode 6
__gettimeofday 6
migget_replyport 6
objc_collectingEnabled 6
szonemalloc_shouldclear 6
XPRT::InternalGetMessage(void*, unsigned int&, void*&, void*&, bool) 5
XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::GetNode(void*, unsigned int&, unsigned int&, XPRT::TMap<void*, void*, XPRT::TDynamicKeyTraits, XPRT::TDynamicTraits>::TNode*&) const 5
XPTL::CComObject<COOL::TProxiedSocket>::Release() 5
dispatch_get_main_queue_port4CF 5
machport_insertmember 5
malloczonemalloc 5
operator delete(void*) 5
Sample analysis of process 517 written to file /dev/stdout -
Problem with oracle using up 100% of CPU
Could anyone tell me what cause oracle to use up all the clock cycle?
This problem occured when I tried to load a jar file to the server and it paused at the resolving stage for a really long time without any errors.
I checked under task manager and found that the cpu is taking up 97-99% by Oracle.exe.Originally posted by Peter Duong ([email protected]):
Could anyone tell me what cause oracle to Hi,
In order to confirm whether resolving is taking much time during loading,can you load it without the resolve option of loadjava and find out how much time does it take.
Regards
Anand
null -
Clementine 100 percent CPU use after quit
after i quit clementine, pause it or stop playback get 100 percent cpu. any ideas ?
when i start clementine from console this is what i get, the second part is after i hit the pause button
Couldn't load icon "clementine-panel"
Couldn't load icon "clementine-panel-grey"
Application asked to unregister timer 0x5b00000a which is not registered in this thread. Fix application.
QPainter::begin: Paint device returned engine == 0, type: 2
QPainter::translate: Painter not active
QPainter::save: Painter not active
QPainter::pen: Painter not active
QPainter::setPen: Painter not active
QPainter::pen: Painter not active
QPainter::setPen: Painter not active
QPainter::setPen: Painter not active
QPainter::pen: Painter not active
QPainter::setPen: Painter not active
QPainter::setPen: Painter not active
QPainter::pen: Painter not active
QPainter::setPen: Painter not active
QPainter::setPen: Painter not active
QPainter::setPen: Painter not active
QPainter::restore: Unbalanced save/restore
QPainter::translate: Painter not active
QPainter::end: Painter not active, abortedI only get 100% CPU after quitting. There's a bug report here.
Seems to be something to-do with the nvidia drivers.
Play, Stop, Pause etc. seem to work fine and I don't get any QPainter errors so you've
got some other problems there. -
ITunes Using Up 100% of CPU
For some reason iTunes was using 100% of my CPU, for some reason I thought the iTunes library may have been corrupt, making iTuunes use 100% of my CPU when I started it. So I deleted my .itl file and imported all of my music again, so now all my songs are in iTunes and it seemed to work. Then, as part of my settings, I turned on the souncd check, now iTunes uses 100% of my CPU and doesn't respond when I open it, how can I fix this?
Sorry. I did a search, and a lot of threads came up. The one I chose, I thought, explained WHY it happened.
Maybe you'd get answers more helpful to you, if you went throught the search results.
Sorry I wasn't of any assistance. -
Installd daemon taking a lot of CPU
I was away from my system for a while and when I returned it was very busy. Apart from Parallels and some other programs there was this installd process that showed up in Activity Monitor. Now, I did not install anything. I quit the running programs, then it was still around. A ps -laxww provided this for installd:
0 59528 1 0 33 0 2607456 111000 - Ss ?? 1:30.63 /System/Library/PrivateFrameworks/PackageKit.framework/Resources/installd
Why is that process taking cpu when I'm not installing anything?Hmm nevermind. It was probably some weird bug. iChat is back to normal here, and also normal at the other end of the chat. It was probably some weirdness with iChat's network (quite common these days!).
-
Message server hogs CPU when clients are disconnected
Hi, I have a problem where java process for the Sun One Message Queue (3.0.1) hogs the cpu when a client is disconnected. I am trying to use the MQ in an environment where clients might crash and try to reconnect in an unpredictable fashion. Most of the time, when I kill the client and restart it, I do not see the problem. Sometimes, however, doing so makes the java process of mq take almsot 100% of Cpu and it does not go down unless i kill the mq process.
I am using asynchrnous message listeners with transactions, on a persisted queue, although i saw this problem when transaction was disabled.
Does anyone have any idea what might be the source of the problem? I hope it's just a matter of configuring MQ correctly, but i could figure it out. Help would be greatly appreciated.Are you running the enterprise edition and
using round-robin queues with multiple
receivers ?
If so, you may be running into a timing related bug
in multiple receivers that has been fixed in service
pack releases of the software
You should contact sun support to discuss testing with
the lastest service pack.
If not, can you provide more information (platform,
# and type of receivers, etc) on how you are using
the product
Thanks -
ITunes 8.2 (23) uses 95% of CPU when playing music
Was hoping someone could share insight as to why iTunes is averaging 95% of a CPU's power while playing music.. the load is generally 75-100%. Per support doc recommendations i have disabled plug-ins (growlTunes) to no avail. Library Sharing off does not make a difference either.
This is something i've been troubleshooting for some time.. at times there were delays between tracks playing, and that called my attention to the CPU usage. I would unplug the iphone which was charging, and the CPU dropped back to 2-3%, and thought i'd won. But then i check back later in the day and the usage is up. Disable growltunes, CPU dropped down, now it is back up again and i've nothing more to disable. Such performance return could have been coincidence however.
questions:
I don't want to find i'm being robbed of performance in a crunch just because i'm playing music. Could this be because i have four processors, and iTunes is using idle processing power? at 95% i see 25% load on each processor. Does the processing power free up when i put more load on the machine?
Watching the usage through a track right now, the usage began at 5%, then rockets up to 95% for the majority of the song. But it is not always up for the whole song, it varies but mostly is in the 90's. Is this due to the complexity of the track it is decoding?
I'm using Uno to make my tiger interface consistent, but i don't believe that has any bearing on iTunes - it did not skin iTunes as it was a newer version than Uno supported.
quad g5- 8gig ram, os x 10.4.11 thanks for any inputupgraded to leopard on this machine
-
Finder periodically runs 100-110% CPU
Another question related to my having add SSD to my MB Pro.
for bursts of time the Finder pegs at 100+ percent CPU usage. I grabbed a sample from the Open FIles & Folders tab in Activity Monitor and I've posted it below to see if anyone can explain what's going on. Thanks.
/System/Library/CoreServices/Finder.app/Contents/MacOS/Finder
/System/Library/TextEncodings/Unicode Encodings.bundle/Contents/MacOS/Unicode Encodings
/System/Library/Fonts/Keyboard.ttf
/private/var/folders/Vs/VsXOpF25Gm0aPDD9oMu9yU+++TM/-Caches-/com.apple.IntlDataC ache.le.sbdl
/System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuickLookUI.fr amework/Versions/A/Resources/DisplayBundles/Movie.qldisplay/Contents/MacOS/Movie
/System/Library/Extensions/AudioIPCDriver.kext/Contents/Resources/AudioIPCPlugIn .bundle/Contents/MacOS/AudioIPCPlugIn
/System/Library/CoreServices/Finder.app/Contents/Resources/Finder.rsrc
/System/Library/ColorSync/Profiles/sRGB Profile.icc
/System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLRendererFloat .bundle/GLRendererFloat
/private/var/folders/Vs/VsXOpF25Gm0aPDD9oMu9yU+++TM/-Caches-/mds/mdsDirectory.db
/Library/Keychains/System.keychain
/System/Library/Caches/com.apple.IntlDataCache.le.kbdx
/System/Library/Frameworks/QuickLook.framework/Versions/A/Resources/GenericIcon. tiff
/System/Library/CoreServices/Encodings/libLatinSuppConverter.dylib
/usr/share/icu/icudt40l.dat
/System/Library/Fonts/LucidaGrande.ttc
/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/Resources/SArtFile .bin
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.fram ework/Versions/A/Resources/Extras2.rsrc
/System/Library/Keyboard Layouts/AppleKeyboardLayouts.bundle/Contents/Resources/AppleKeyboardLayouts-L.d at
/System/Library/Fonts/Helvetica.dfont
/Library/DropboxHelperTools/Dropbox_u502/DropboxBundle.bundle/Contents/MacOS/Dro pboxBundle
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.fram ework/Versions/A/Resources/HIToolbox.rsrc
/System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuickLookUI.fr amework/Versions/A/Resources/BlueFolderBack.png
/System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuickLookUI.fr amework/Versions/A/Resources/DisplayBundles/Generic.qldisplay/Contents/MacOS/Gen eric
/System/Library/Frameworks/QuickLook.framework/Versions/A/Resources/BookmarkGene ricIcon.png
/System/Library/Extensions/AppleHDA.kext/Contents/PlugIns/AppleHDAHALPlugIn.bund le/Contents/MacOS/AppleHDAHALPlugIn
/System/Library/PrivateFrameworks/CoreUI.framework/Versions/A/Resources/ArtFile. bin
/System/Library/Frameworks/Quartz.framework/Versions/A/Frameworks/QuickLookUI.fr amework/Versions/A/Resources/BlueFolderFront.png
/System/Library/Frameworks/OpenGL.framework/Versions/A/Resources/GLEngine.bundle /GLEngine
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.fram ework/Versions/A/Resources/English.lproj/Localized.rsrc
/System/Library/Extensions/GeForceGLDriver.bundle/Contents/MacOS/libclh.dylib
/System/Library/Extensions/AppleIntelHDGraphicsGLDriver.bundle/Contents/MacOS/Ap pleIntelHDGraphicsGLDriver
/System/Library/Components/CoreAudio.component/Contents/MacOS/CoreAudio
/System/Library/Components/AudioCodecs.component/Contents/MacOS/AudioCodecs
/private/var/folders/Vs/VsXOpF25Gm0aPDD9oMu9yU+++TM/-Caches-/com.apple.LaunchSer vices-025502.csstore
/System/Library/Extensions/GeForceGLDriver.bundle/Contents/MacOS/GeForceGLDriver
/usr/lib/dyld
/private/var/db/dyld/dyld_shared_cache_x86_64
/dev/null
->0xffffff8015c299f0
->0xffffff8015c299f0
/private/etc/security/audit_control
count=1, state=0x2
->0xffffff8015e264c0
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.fram ework/Versions/A/Resources/Extras2.rsrc
->0xffffff8015e26ac0
->0xffffff8014d7cd40
->0xffffff8015e26700
localhost:49172->localhost:26165
->0xffffff8015e261c0
/Users/Bob/.dropbox/finderplugin/l/4e20aa8f
/System/Library/CoreServices/Finder.app/Contents/Resources/Finder.rsrc
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.fram ework/Versions/A/Resources/HIToolbox.rsrc
/System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/HIToolbox.fram ework/Versions/A/Resources/English.lproj/Localized.rsrc
/Users/Bob
/private/etc/security/audit_classYes I did and in this instance the problem was solved.
When it first started happening I figured that because of all my configuration changes resulting from the new drive that Spotlight indexes were updating or something similar.
Probably all is fine but I'm noticing everything at the moment since I've made major changes to the MB Pro.
Maybe you are looking for
-
How to get new value from VO through CO?
Hi, I have several tab in Po page. In the Lines Tab I change some values that I want to get in Distribution tab. This values aren't in the DB. How can I get it? I tried the following code but it didn't work OAViewObject PoLin
-
Webservice creation for consuming BAPI
Hi, I want to create a webservice for consuming data from standard sap functional module for mobile integration. Can someone explain his experience to reach this requirement? My main requirement is to design a webservice which can consume SAP B
-
Writing area won't pop up - Digitizer issue
My heavily used TX screen has a dead area (actually it's on life support). The dead area is the extreme lower right: the icon that expands and hides the writing area. Note that it works fine in landscape mode but that's not my favorite mode of use. M
-
Price list type at item in CRMD_ORDER
Hi, I need to change the price list at item level in CRMD_ORDER. Can you please help me in finding out the right BADI. I have used BADI "crm_cond_badi" which is at item level but the header price list ( coming from customer master data) is overwritt
-
Hi I have defrauded in app store
Hi There is a application named Tubeplayer in the App Store I bought this application because it's download videos directly from YouTube Today I try to find the download button, but I can not find it Now, what to do I want to download video clips fro